From aafcea896fb967a4fce5785f8c42bf1117a4863e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E5=AD=A6=E5=88=A9?= Date: Fri, 18 Sep 2020 12:12:57 +0800 Subject: [PATCH] Fix log level --- CMakeLists.txt | 37 ------------------------------------- cmake/Package.cmake | 20 +++++++++++--------- cmake/PreInstall.sh | 14 ++++++++++++++ cmake/PreUninstall.sh | 12 ++++++++++++ cmake/Version.cmake | 14 +++++--------- src/CMakeLists.txt | 4 ++-- src/fw_dns_plug.cpp | 13 +++++++++++-- 7 files changed, 55 insertions(+), 59 deletions(-) create mode 100644 cmake/PreInstall.sh create mode 100644 cmake/PreUninstall.sh diff --git a/CMakeLists.txt b/CMakeLists.txt index 7cdf294..d21726f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -34,41 +34,4 @@ set(CMAKE_INSTALL_PREFIX /home/mesasoft/sapp_run) add_subdirectory (src) -set(CONFLIST /plug/conflist.inf) -set(MASTER_INF "./plug/business/fw_dns_plug/fw_dns_plug.inf") -set(MAIN_CONF /tsgconf/main.conf) - -file(WRITE ${PROJECT_SOURCE_DIR}/install.sh "#!/bin/sh\r\n") -file(WRITE ${PROJECT_SOURCE_DIR}/uninstall.sh "#!/bin/sh\r\n") - -file(APPEND ${PROJECT_SOURCE_DIR}/install.sh "DST=\${RPM_INSTALL_PREFIX}\r\n") -file(APPEND ${PROJECT_SOURCE_DIR}/uninstall.sh "DST=\${RPM_INSTALL_PREFIX}\r\n") - -file(APPEND ${PROJECT_SOURCE_DIR}/install.sh "mkdir -p \${DST}/plug/business/\r\n") -file(APPEND ${PROJECT_SOURCE_DIR}/uninstall.sh "mkdir -p \${DST}/plug/business/\r\n") - -file(APPEND ${PROJECT_SOURCE_DIR}/install.sh "touch \${DST}${CONFLIST}\r\n") -file(APPEND ${PROJECT_SOURCE_DIR}/uninstall.sh "touch \${DST}${CONFLIST}\r\n") - -file(APPEND ${PROJECT_SOURCE_DIR}/install.sh "mkdir -p \${DST}/tsgconf/\r\n") -file(APPEND ${PROJECT_SOURCE_DIR}/uninstall.sh "mkdir -p \${DST}/tsgconf/\r\n") - -file(APPEND ${PROJECT_SOURCE_DIR}/install.sh "touch \${DST}${MAIN_CONF}\r\n") -file(APPEND ${PROJECT_SOURCE_DIR}/uninstall.sh "touch \${DST}${MAIN_CONF}\r\n") - -file(APPEND ${PROJECT_SOURCE_DIR}/install.sh "if [[ -z `grep -rn 'fw_dns_plug.inf' \${DST}${CONFLIST}` ]];then\r\n") -file(APPEND ${PROJECT_SOURCE_DIR}/install.sh "\tsed -i '/\\[business\\]/a\\${MASTER_INF}' \${DST}${CONFLIST}\r\n") -file(APPEND ${PROJECT_SOURCE_DIR}/install.sh "fi\r\n") -file(APPEND ${PROJECT_SOURCE_DIR}/uninstall.sh "sed -i '/fw_dns_plug.inf/d' \${DST}${CONFLIST}\r\n") - -file(APPEND ${PROJECT_SOURCE_DIR}/install.sh "if [[ -z `grep -rn '\\[DNS_PLUG\\]' \${DST}${MAIN_CONF}` ]];then\r\n") -file(APPEND ${PROJECT_SOURCE_DIR}/install.sh "\tsed -i '1i\\\\[DNS_PLUG\\]' \${DST}${MAIN_CONF}\r\n") -file(APPEND ${PROJECT_SOURCE_DIR}/install.sh "\tsed -i '/\\[DNS_PLUG\\]/a\\LOG_LEVEL=30' \${DST}${MAIN_CONF}\r\n") -file(APPEND ${PROJECT_SOURCE_DIR}/install.sh "\tsed -i '/\\[DNS_PLUG\\]/a\\LOG_PATH=./tsglog/fw_dns_plug/fw_dns_plug' \${DST}${MAIN_CONF}\r\n") -file(APPEND ${PROJECT_SOURCE_DIR}/install.sh "fi\r\n") -file(APPEND ${PROJECT_SOURCE_DIR}/uninstall.sh "sed -i '/\\[DNS_PLUG\\]/,+2d' \${DST}${MAIN_CONF}\r\n") - -SET(CPACK_RPM_PRE_INSTALL_SCRIPT_FILE "${PROJECT_SOURCE_DIR}/install.sh") -SET(CPACK_RPM_PRE_UNINSTALL_SCRIPT_FILE "${PROJECT_SOURCE_DIR}/uninstall.sh") - include(Package) diff --git a/cmake/Package.cmake b/cmake/Package.cmake index 81d4130..eaabb8c 100644 --- a/cmake/Package.cmake +++ b/cmake/Package.cmake @@ -14,8 +14,8 @@ set(CPACK_PACKAGING_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}) set(CPACK_PACKAGE_VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}.${VERSION_BUILD}") execute_process(COMMAND bash -c "echo -ne \"`uname -r | awk -F'.' '{print $5\".\"$6\".\"$7}'`\"" OUTPUT_VARIABLE SYSTEM_VERSION) -#execute_process(COMMAND sh changelog.sh WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/cmake) -#SET(CPACK_RPM_CHANGELOG_FILE ${PROJECT_SOURCE_DIR}/cmake/changelog.txt) +execute_process(COMMAND sh changelog.sh WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/cmake) +SET(CPACK_RPM_CHANGELOG_FILE ${PROJECT_SOURCE_DIR}/cmake/changelog.txt) # RPM Build set(CPACK_GENERATOR "RPM") @@ -30,18 +30,20 @@ set(CPACK_COMPONENTS_IGNORE_GROUPS 1) set(CPACK_COMPONENTS_GROUPING ONE_PER_GROUP) set(CPACK_COMPONENT_HEADER_DISPLAY_NAME "develop") -set(CPACK_COMPONENT_LIBRARY_REQUIRED TRUE) -set(CPACK_RPM_LIBRARY_PACKAGE_NAME ${MY_RPM_NAME_PREFIX}) -set(CPACK_RPM_LIBRARY_FILE_NAME "${CPACK_RPM_LIBRARY_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${SYSTEM_VERSION}.rpm") -set(CPACK_RPM_LIBRARY_DEBUGINFO_FILE_NAME "${CPACK_RPM_LIBRARY_PACKAGE_NAME}-debuginfo-${CPACK_PACKAGE_VERSION}-${SYSTEM_VERSION}.rpm") +set(CPACK_COMPONENT_LIBRARIES_REQUIRED TRUE) +set(CPACK_RPM_LIBRARIES_PACKAGE_NAME ${MY_RPM_NAME_PREFIX}) +set(CPACK_RPM_LIBRARIES_FILE_NAME "${CPACK_RPM_LIBRARIES_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${SYSTEM_VERSION}.rpm") +set(CPACK_RPM_LIBRARIES_DEBUGINFO_FILE_NAME "${CPACK_RPM_LIBRARIES_PACKAGE_NAME}-debuginfo-${CPACK_PACKAGE_VERSION}-${SYSTEM_VERSION}.rpm") -set(CPACK_COMPONENT_LIBRARY_GROUP "library") -set(CPACK_COMPONENT_PROFILE_GROUP "library") +set(CPACK_COMPONENT_LIBRARIES_GROUP "libraries") +set(CPACK_COMPONENT_PROFILE_GROUP "libraries") set(CPACK_RPM_HEADER_PACKAGE_CONFLICTS ${CPACK_RPM_HEADER_PACKAGE_NAME}) -set(CPACK_COMPONENTS_ALL LIBRARY PROFILE) +set(CPACK_COMPONENTS_ALL LIBRARIES PROFILE) +SET(CPACK_RPM_LIBRARIES_PRE_INSTALL_SCRIPT_FILE "${PROJECT_SOURCE_DIR}/cmake/PreInstall.sh") +SET(CPACK_RPM_LIBRARIES_PRE_UNINSTALL_SCRIPT_FILE "${PROJECT_SOURCE_DIR}/cmake/PreUninstall.sh") set(CPACK_BUILD_SOURCE_DIRS "${CMAKE_SOURCE_DIR}") diff --git a/cmake/PreInstall.sh b/cmake/PreInstall.sh new file mode 100644 index 0000000..aaff6a6 --- /dev/null +++ b/cmake/PreInstall.sh @@ -0,0 +1,14 @@ +#!/bin/sh +DST=${RPM_INSTALL_PREFIX} +mkdir -p ${DST}/plug/business/ +touch ${DST}/plug/conflist.inf +mkdir -p ${DST}/tsgconf/ +touch ${DST}/tsgconf/main.conf +if [[ -z `grep -rn 'fw_dns_plug.inf' ${DST}/plug/conflist.inf` ]];then + sed -i '/\[business\]/a\./plug/business/fw_dns_plug/fw_dns_plug.inf' ${DST}/plug/conflist.inf +fi +if [[ -z `grep -rn '\[DNS_PLUG\]' ${DST}/tsgconf/main.conf` ]];then + sed -i '1i\\[DNS_PLUG\]' ${DST}/tsgconf/main.conf + sed -i '/\[DNS_PLUG\]/a\LOG_LEVEL=30' ${DST}/tsgconf/main.conf + sed -i '/\[DNS_PLUG\]/a\LOG_PATH=./tsglog/fw_dns_plug/fw_dns_plug' ${DST}/tsgconf/main.conf +fi diff --git a/cmake/PreUninstall.sh b/cmake/PreUninstall.sh new file mode 100644 index 0000000..d4d5385 --- /dev/null +++ b/cmake/PreUninstall.sh @@ -0,0 +1,12 @@ +#!/bin/sh +if [ $1 == 0 ]; then + DST=${RPM_INSTALL_PREFIX} + + mkdir -p ${DST}/plug/business/ + touch ${DST}/plug/conflist.inf + mkdir -p ${DST}/tsgconf/ + touch ${DST}/tsgconf/main.conf + + sed -i '/fw_dns_plug.inf/d' ${DST}/plug/conflist.inf + sed -i '/\[DNS_PLUG\]/,+2d' ${DST}/tsgconf/main.conf +fi diff --git a/cmake/Version.cmake b/cmake/Version.cmake index 752f20f..b6fdab3 100644 --- a/cmake/Version.cmake +++ b/cmake/Version.cmake @@ -38,16 +38,12 @@ set(VERSION_BUILD "${VCS_SHORT_HASH}") # print information message(STATUS "Version: ${VERSION}-${VERSION_BUILD}") -if(NOT DEFINE_GIT_VERSION) - option(DEFINE_GIT_VERSION "Set DEFINE_GIT_VERSION to OFF" OFF) - -set(GIT_VERSION - "${VERSION}-${CMAKE_BUILD_TYPE}-${VERSION_BUILD}-${VCS_BRANCH}-${VCS_TAG}-${VCS_DATE}") -string(REGEX REPLACE "[-:+/\\.]" "_" GIT_VERSION ${GIT_VERSION}) +option(DEFINE_GIT_VERSION "Set DEFINE_GIT_VERSION to TRUE or FALSE" TRUE) if(DEFINE_GIT_VERSION) - add_definitions(-DGIT_VERSION=${GIT_VERSION}) - option(DEFINE_GIT_VERSION "Set DEFINE_GIT_VERSION to OFF" ON) -endif() + set(GIT_VERSION + "${VERSION}-${CMAKE_BUILD_TYPE}-${VERSION_BUILD}-${VCS_BRANCH}-${VCS_TAG}-${VCS_DATE}") + string(REGEX REPLACE "[-:+/\\.]" "_" GIT_VERSION ${GIT_VERSION}) + add_definitions(-DGIT_VERSION=${GIT_VERSION}) endif() diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 6d90e4b..8edc88f 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -8,12 +8,12 @@ include_directories(${CMAKE_SOURCE_DIR}/src) include_directories(/opt/MESA/include/) include_directories(/opt/MESA/include/tsg/) -set(FW_DNS_PLUG_DEPEND_DYN_LIB MESA_handle_logger MESA_prof_load maatframe pthread MESA_field_stat2) +set(FW_DNS_PLUG_DEPEND_DYN_LIB maatframe pthread MESA_field_stat2) add_library(fw_dns_plug SHARED ${SRC}) target_link_libraries(fw_dns_plug ${FW_DNS_PLUG_DEPEND_DYN_LIB}) set_target_properties(fw_dns_plug PROPERTIES PREFIX "") -install(TARGETS fw_dns_plug LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/plug/business/fw_dns_plug COMPONENT LIBRARY) +install(TARGETS fw_dns_plug LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/plug/business/fw_dns_plug COMPONENT LIBRARIES) install(FILES ../bin/fw_dns_plug.inf DESTINATION ${CMAKE_INSTALL_PREFIX}/plug/business/fw_dns_plug COMPONENT PROFILE) diff --git a/src/fw_dns_plug.cpp b/src/fw_dns_plug.cpp index 2f51776..5ab4ab5 100644 --- a/src/fw_dns_plug.cpp +++ b/src/fw_dns_plug.cpp @@ -314,6 +314,10 @@ static int fw_dns_send_log(struct streaminfo *a_stream, dns_info_t *dns_info, st get_rr_str2json(object, dns_info, &dns_sec); rr_buf=cJSON_PrintUnformatted(object); TLD_append(handle, (char *)"dns_rr", (void *)rr_buf, TLD_TYPE_STRING); + + cJSON_Delete(object); + object=NULL; + free(rr_buf); rr_buf=NULL; @@ -338,10 +342,15 @@ extern "C" char FW_DNS_PLUG_ENTRY(stSessionInfo* session_info, void **pme, int struct Maat_rule_t result[MAX_RESULT_NUM], *p_result=NULL; dns_info_t *dns_info=(dns_info_t *)session_info->app_info; - if(dns_info==NULL || strlen((char *)dns_info->query_question.qname)==0) + if(dns_info==NULL) + { + return state; + } + + if(strlen((char *)dns_info->query_question.qname)==0) { MESA_handle_runtime_log(g_fw_dns_plug_info.logger, - RLOG_LV_FATAL, + RLOG_LV_DEBUG, "DNS_PLUG", "Qname is %s, addr: %s", (dns_info==NULL) ? "NULL" : ((strlen((char *)dns_info->query_question.qname)==0) ? "NULL" : (char *)dns_info->query_question.qname),