summaryrefslogtreecommitdiffstats
path: root/logger_service/server/src/ss_logger_error_event_cfg.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'logger_service/server/src/ss_logger_error_event_cfg.cpp')
-rw-r--r--logger_service/server/src/ss_logger_error_event_cfg.cpp149
1 files changed, 68 insertions, 81 deletions
diff --git a/logger_service/server/src/ss_logger_error_event_cfg.cpp b/logger_service/server/src/ss_logger_error_event_cfg.cpp
index ccc6082d..fcd733ef 100644
--- a/logger_service/server/src/ss_logger_error_event_cfg.cpp
+++ b/logger_service/server/src/ss_logger_error_event_cfg.cpp
@@ -1,5 +1,5 @@
/*
- * @copyright Copyright (c) 2016-2019 TOYOTA MOTOR CORPORATION.
+ * @copyright Copyright (c) 2016-2020 TOYOTA MOTOR CORPORATION.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -54,43 +54,27 @@ enum ARTIFACT_BIT {
ARTIFACT_BIT_DEBUG_FOLDER2_CONTENT = 1
<< (UI_32) eArtifactIdDebugFolder2Content,
ARTIFACT_BIT_COM_LOG = 1 << (UI_32) eArtifactIdComDebugLog,
- ARTIFACT_BIT_RADIO_LOG = 1 << (UI_32) eArtifactIdRadioDebugLog,
- ARTIFACT_BIT_CONNECTIVITY_LOG = 1 << (UI_32) eArtifactIdConnectivityDebugLog,
- ARTIFACT_BIT_GRAPHICS_LOG = 1 << (UI_32) eArtifactIdGraphicsDebugLog,
- ARTIFACT_BIT_SYS_LOG = 1 << (UI_32) eArtifactIdSysLog,
- ARTIFACT_BIT_PSTORE_LOG = 1 << (UI_32) eArtifactIdPstoreLog,
- ARTIFACT_BIT_WINSYS_LOG = 1 << (UI_32) eArtifactIdWinSysLog,
- ARTIFACT_BIT_APPFW_LOG = 1 << (UI_32) eArtifactIdAppFwLog,
- ARTIFACT_BIT_TOMOYO_LOG = 1 << (UI_32) eArtifactIdTomoyoLog
+ ARTIFACT_BIT_PSTORE_LOG = 1 << (UI_32) eArtifactIdPstoreLog
};
//////////////////////////////////////////////////////////////////////////////////////////
///// Definition for Logging Artifact Filepaths
//////////////////////////////////////////////////////////////////////////////////////////
-const char LAF_DEBUG_FOLDER[] = "/nv/log";
-const char LAF_DEBUG_FOLDER2[] = "/nv/log2";
+const char LAF_DEBUG_FOLDER[] = "/nv/BS/ss/logger_service/rwdata";
+const char LAF_DEBUG_FOLDER2[] = "/nv/BS/ss/logger_service/rwdata/log2";
const char LAF_MONTECARLO_FN[] = "/tmp/MonteCarlo";
const char LAF_METACORE_FN[] = "/tmp/MetaCore";
const char LAF_CMS_FN[] = "/tmp/cms";
const char LAF_INT_DTC_FN[] = "/tmp/dtc_error.log";
-const char LAF_LOGGERSERVICELOG_COM[] = "/ramd/log/frameworkunifiedlog/communication";
-const char LAF_LOGGERSERVICELOG_RDO[] = "/ramd/log/frameworkunifiedlog/radio";
-const char LAF_LOGGERSERVICELOG_CONNECTIVITY[] = "/ramd/log/frameworkunifiedlog/connectivity";
-const char LAF_GRAPHICS_FN[] = "/ramd/log/frameworkunifiedlog/graphics.log";
-const char LAF_KERNEL_BOOT_FN[] = "/ramd/log/frameworkunifiedlog/kernelboot.log";
-const char LAF_SYSLOG[] = "/ramd/log/frameworkunifiedlog/syslog";
+const char LAF_LOGGERSERVICELOG_COM[] = "/ramd/BS/ss/logger_service/rwdata/frameworkunifiedlog/communication";
+const char LAF_KERNEL_BOOT_FN[] = "/ramd/BS/ss/logger_service/rwdata/frameworkunifiedlog/kernelboot.log";
const char LAF_PSTORELOG[] = "/dev/pstore";
-const char LAF_WINSYS_FN[] = "/ramd/log/frameworkunifiedlog/winsys.log";
-const char LAF_APPFW[] = "/ramd/log/frameworkunifiedlog/appfw";
-const char LAF_TOMOYO[] = "/nv/ptdata/sec/tomoyo";
#define ARTIFACT_BIT_ALL_OUTPUT_LOG (ARTIFACT_BIT_LOGGERSERVICE_DEBUG_LOG | \
ARTIFACT_BIT_DEBUG_DUMP_LOG | \
ARTIFACT_BIT_SYSTEM_DATA_LOG | \
ARTIFACT_BIT_SHOW_MEM_TXT | \
ARTIFACT_BIT_COM_LOG | \
- ARTIFACT_BIT_RADIO_LOG | \
- ARTIFACT_BIT_CONNECTIVITY_LOG | \
ARTIFACT_BIT_KERNEL_LOG | \
ARTIFACT_BIT_KERNEL_BOOT_LOG | \
ARTIFACT_BIT_SCREEN_SHOT | \
@@ -100,13 +84,8 @@ const char LAF_TOMOYO[] = "/nv/ptdata/sec/tomoyo";
ARTIFACT_BIT_DRLOCATION_LOG | \
ARTIFACT_BIT_CHLM_MC_LOGS | \
ARTIFACT_BIT_INTERNAL_DTC_LOG | \
- ARTIFACT_BIT_GRAPHICS_LOG | \
- ARTIFACT_BIT_SYS_LOG | \
ARTIFACT_BIT_METACORE_LOGS | \
- ARTIFACT_BIT_PSTORE_LOG | \
- ARTIFACT_BIT_WINSYS_LOG | \
- ARTIFACT_BIT_APPFW_LOG | \
- ARTIFACT_BIT_TOMOYO_LOG)
+ ARTIFACT_BIT_PSTORE_LOG)
TLoggingArtifactCfg CErrorEventCfg::m_loggerErrorEventCfgTbl[eErrorEventTypeMaxValue] = {
{ eErrorEventTypeProcessCrash, { (ARTIFACT_BIT_ALL_OUTPUT_LOG
@@ -191,56 +170,30 @@ TLoggingArtifactCfg CErrorEventCfg::m_loggerErrorEventCfgTbl[eErrorEventTypeMaxV
TLoggingArtifact CErrorEventCfg::m_loggerErrorArtifactCfgTbl[eArtifactIdMaxValue] = { // LCOV_EXCL_BR_LINE 11:Unexpected branch
/*Artifact ID Owner Timeout Callback Type Path CallBack Function Delete tmp artifact*/
- { eArtifactIdInterfaceunifiedDebugLog, { SERVICE_LOGGER, 5000, { eCbTypeFunction, "",
- SSLogger_SendtoSelf }, TRUE } }, { eArtifactIdTransmitLog,
- { SERVICE_LOGGER, 5000, { eCbTypeFunction, "", SSLogger_SendtoSelf },
- TRUE } }, { eArtifactIdPerformanceLog, { SERVICE_LOGGER, 5, {
- eCbTypeFunction, "", SSLogger_SendtoSelf }, FALSE } }, {
- eArtifactIdBootMicroLog, { SERVICE_SYSMANAGER, 1000, { eCbTypeFunction,
- "", SSLogger_SendtoSM }, TRUE } }, { eArtifactIdSystemDataCsv, {
- SERVICE_SYSMANAGER, 5000, { eCbTypeFunction, "", SSLogger_SendtoSM },
- TRUE } }, { eArtifactIdShowMemTxt, { SERVICE_SYSMANAGER, 8000, {
- eCbTypeFunction, "", SSLogger_SendtoSM }, TRUE } }, {
- eArtifactIdProcessCore, { SERVICE_SYSMANAGER, 5000, { eCbTypeFunction,
- "", SSLogger_SendtoSM }, TRUE } }, { eArtifactIdDebugDumpLog, {
- SERVICE_SYSMANAGER, 4000, { eCbTypeFunction, "", SSLogger_SendtoSM },
- TRUE } }, { eArtifactIdScreenShot, { SERVICE_LOGGER, 1100, {
- eCbTypeFunction, "", SSLogger_SendtoSelf }, TRUE } }, {
- eArtifactIdDebugFolderContent, { SERVICE_LOGGER, 50000, { eCbTypePath,
- LAF_DEBUG_FOLDER, NULL }, FALSE } }, {
- eArtifactIdDebugFolder2Content, { SERVICE_LOGGER, 50000, { eCbTypePath,
- LAF_DEBUG_FOLDER2, NULL }, FALSE } }, { eArtifactIdKernelLog,
- { SERVICE_LOGGER, 5000, { eCbTypeFunction, "", SSLogger_SendtoSelf },
- TRUE } }, { eArtifactIdKernelBootLog, { SERVICE_LOGGER, 5000, {
- eCbTypePath, LAF_KERNEL_BOOT_FN, NULL }, FALSE } }, {
- eArtifactIdDRInitialLog, { SERVICE_LOGGER, 500, { eCbTypeFunction, "",
- SSLogger_SendtoSelf }, TRUE } }, { eArtifactIdDRLocationLog,
- { SERVICE_LOGGER, 500, { eCbTypeFunction, "", SSLogger_SendtoSelf },
- TRUE } }, { eArtifactIdCpuHighLoadMonteCarloLogs, { SERVICE_LOGGER,
- 50, { eCbTypePath, LAF_MONTECARLO_FN, NULL }, TRUE } }, {
- eArtifactIdMetaCoreLogs, { SERVICE_LOGGER, 50, { eCbTypePath,
- LAF_METACORE_FN, NULL }, TRUE } }, { eArtifactIdCmsLogs, {
- SERVICE_LOGGER, 500, { eCbTypePath, LAF_CMS_FN, NULL }, TRUE } }, {
- eArtifactIDInternalDTC, { SERVICE_LOGGER, 500, { eCbTypePath,
- LAF_INT_DTC_FN, NULL }, TRUE } }, { eArtifactIdComDebugLog, {
- SERVICE_LOGGER, 500, { eCbTypePath, LAF_LOGGERSERVICELOG_COM, NULL }, FALSE } }, {
- eArtifactIdRadioDebugLog, { SERVICE_LOGGER, 500, { eCbTypePath,
- LAF_LOGGERSERVICELOG_RDO, NULL }, FALSE } }, {
- eArtifactIdConnectivityDebugLog, { SERVICE_LOGGER, 500, { eCbTypePath,
- LAF_LOGGERSERVICELOG_CONNECTIVITY, NULL }, FALSE } }, {
- eArtifactIdGraphicsDebugLog, { SERVICE_LOGGER, 50, { eCbTypePath,
- LAF_GRAPHICS_FN, NULL }, FALSE } }, { eArtifactIdSysLog, {
- SERVICE_LOGGER, 50, { eCbTypePath, LAF_SYSLOG, NULL }, FALSE } }, {
- eArtifactIdPstoreLog, { SERVICE_LOGGER, 50, { eCbTypePath,
- LAF_PSTORELOG, NULL }, FALSE } }, { eArtifactIdClearAllLog,
- { SERVICE_LOGGER, 500, { eCbTypeFunction, "", SSLogger_SendtoSelf },
- FALSE } }, { eArtifactIdNaviLog, { SERVICE_LOGGER, 5000, {
- eCbTypeFunction, "", SSLogger_SendtoSelf }, FALSE } }, {
- eArtifactIdWinSysLog, { SERVICE_LOGGER, 50, { eCbTypePath,
- LAF_WINSYS_FN, NULL }, FALSE } }, { eArtifactIdAppFwLog, {
- SERVICE_LOGGER, 500, { eCbTypePath, LAF_APPFW, NULL }, FALSE } }, {
- eArtifactIdTomoyoLog, { SERVICE_LOGGER, 50, { eCbTypePath, LAF_TOMOYO,
- NULL }, TRUE } } }; // LCOV_EXCL_BR_LINE 11:Unexpected branch
+ { eArtifactIdInterfaceunifiedDebugLog, { SERVICE_LOGGER, 5000, { eCbTypeFunction, "", SSLogger_SendtoSelf }, TRUE } },
+ { eArtifactIdTransmitLog, { SERVICE_LOGGER, 5000, { eCbTypeFunction, "", SSLogger_SendtoSelf }, TRUE } },
+ { eArtifactIdPerformanceLog, { SERVICE_LOGGER, 5, { eCbTypeFunction, "", SSLogger_SendtoSelf }, FALSE } },
+ { eArtifactIdBootMicroLog, { SERVICE_SYSMANAGER, 1000, { eCbTypeFunction, "", SSLogger_SendtoSM }, TRUE } },
+ { eArtifactIdSystemDataCsv, { SERVICE_SYSMANAGER, 5000, { eCbTypeFunction, "", SSLogger_SendtoSM }, TRUE } },
+ { eArtifactIdShowMemTxt, { SERVICE_SYSMANAGER, 8000, { eCbTypeFunction, "", SSLogger_SendtoSM }, TRUE } },
+ { eArtifactIdProcessCore, { SERVICE_SYSMANAGER, 5000, { eCbTypeFunction, "", SSLogger_SendtoSM }, TRUE } },
+ { eArtifactIdDebugDumpLog, { SERVICE_SYSMANAGER, 4000, { eCbTypeFunction, "", SSLogger_SendtoSM }, TRUE } },
+ { eArtifactIdScreenShot, { SERVICE_LOGGER, 1100, { eCbTypeFunction, "", SSLogger_SendtoSelf }, TRUE } },
+ { eArtifactIdDebugFolderContent, { SERVICE_LOGGER, 50000, { eCbTypePath, LAF_DEBUG_FOLDER, NULL }, FALSE } },
+ { eArtifactIdDebugFolder2Content, { SERVICE_LOGGER, 50000, { eCbTypePath, LAF_DEBUG_FOLDER2, NULL }, FALSE } },
+ { eArtifactIdKernelLog, { SERVICE_LOGGER, 5000, { eCbTypeFunction, "", SSLogger_SendtoSelf }, TRUE } },
+ { eArtifactIdKernelBootLog, { SERVICE_LOGGER, 5000, { eCbTypePath, LAF_KERNEL_BOOT_FN, NULL }, FALSE } },
+ { eArtifactIdDRInitialLog, { SERVICE_LOGGER, 500, { eCbTypeFunction, "", SSLogger_SendtoSelf }, TRUE } },
+ { eArtifactIdDRLocationLog, { SERVICE_LOGGER, 500, { eCbTypeFunction, "", SSLogger_SendtoSelf }, TRUE } },
+ { eArtifactIdCpuHighLoadMonteCarloLogs, { SERVICE_LOGGER, 50, { eCbTypePath, LAF_MONTECARLO_FN, NULL }, TRUE } },
+ { eArtifactIdMetaCoreLogs, { SERVICE_LOGGER, 50, { eCbTypePath, LAF_METACORE_FN, NULL }, TRUE } },
+ { eArtifactIdCmsLogs, { SERVICE_LOGGER, 500, { eCbTypePath, LAF_CMS_FN, NULL }, TRUE } },
+ { eArtifactIDInternalDTC, { SERVICE_LOGGER, 500, { eCbTypePath, LAF_INT_DTC_FN, NULL }, TRUE } },
+ { eArtifactIdComDebugLog, { SERVICE_LOGGER, 500, { eCbTypePath, LAF_LOGGERSERVICELOG_COM, NULL }, FALSE } },
+ { eArtifactIdPstoreLog, { SERVICE_LOGGER, 50, { eCbTypePath, LAF_PSTORELOG, NULL }, FALSE } },
+ { eArtifactIdClearAllLog, { SERVICE_LOGGER, 500, { eCbTypeFunction, "", SSLogger_SendtoSelf }, FALSE } },
+ { eArtifactIdNaviLog, { SERVICE_LOGGER, 5000, { eCbTypeFunction, "", SSLogger_SendtoSelf }, FALSE } },
+}; // LCOV_EXCL_BR_LINE 11:Unexpected branch
CErrorEventCfg::CErrorEventCfg() {
FRAMEWORKUNIFIEDLOG(ZONE_FUNC, __FUNCTION__, "+");
@@ -254,11 +207,14 @@ CErrorEventCfg::~CErrorEventCfg() { // LCOV_EXCL_START 14:globle instance
}
// LCOV_EXCL_STOP
-EFrameworkunifiedStatus CErrorEventCfg::Initialize(void) {
+EFrameworkunifiedStatus CErrorEventCfg::Initialize(CLoggerCfg* p_logger_cfg) {
FRAMEWORKUNIFIEDLOG(ZONE_FUNC, __FUNCTION__, "+");
EFrameworkunifiedStatus l_eStatus = eFrameworkunifiedStatusOK;
UI_32 l_cnt;
+ m_ext_log_num = 0;
+ ExternalLogList ext_log = p_logger_cfg->GetExternalLogList();
+
for (l_cnt = 0; l_cnt < eArtifactIdMaxValue; l_cnt++) {
EArtifactId l_artifactId = m_loggerErrorArtifactCfgTbl[l_cnt].ArtifactId;
TLoggingArtifactInformation l_artifactInformation =
@@ -272,6 +228,27 @@ EFrameworkunifiedStatus CErrorEventCfg::Initialize(void) {
m_errorEventTypeToArtifactBitMaskMap[l_eventType] = l_errorEvtInformation;
}
+ // Set external log info
+ if (ext_log.num > 0) {
+ if (ext_log.num <= ext_log.max) {
+ m_ext_log_num = ext_log.num;
+ } else {
+ m_ext_log_num = ext_log.max;
+ }
+
+ for (UI_32 i = 0; i < m_ext_log_num; i++) {
+ EArtifactId l_artifactId = (EArtifactId) (eArtifactIdMaxValue + i);
+ TLoggingArtifactInformation artifact_info;
+ artifact_info.Cb.Function = NULL;
+ artifact_info.Cb.Path = ext_log.p_info[i].path;
+ artifact_info.Cb.Type = eCbTypePath;
+ artifact_info.OwnerServiceName = SERVICE_LOGGER;
+ artifact_info.Remove = ext_log.p_info[i].remove;
+ artifact_info.RequestTimeoutMs = 5000;
+ m_errorArtifactMap[l_artifactId] = artifact_info;
+ }
+ }
+
l_eStatus = (EFrameworkunifiedStatus) ValidateConfiguration();
LOG_STATUS_IF_ERRORED(l_eStatus, "ValidateConfiguration()"); // LCOV_EXCL_BR_LINE 5:macro
@@ -283,12 +260,13 @@ UI_32 CErrorEventCfg::ValidateConfiguration(void) {
FRAMEWORKUNIFIEDLOG(ZONE_FUNC, __FUNCTION__, "+");
UI_32 l_return = 0;
- if (eArtifactIdMaxValue != m_errorArtifactMap.size()) { // LCOV_EXCL_BR_LINE 6:Be sure not to exceed the eArtifactIdMaxValue
+
+ if ((eArtifactIdMaxValue + m_ext_log_num) != m_errorArtifactMap.size()) { // LCOV_EXCL_BR_LINE 6:Be sure not to exceed the eArtifactIdMaxValue
// LCOV_EXCL_START 6:Be sure not to exceed the eArtifactIdMaxValue
AGL_ASSERT_NOT_TESTED(); // LCOV_EXCL_LINE 200: test assert
FRAMEWORKUNIFIEDLOG(ZONE_ERR, __FUNCTION__,
"Artifact map size mismatch: Expected: %d, Found: %d",
- eArtifactIdMaxValue, m_errorArtifactMap.size());
+ (eArtifactIdMaxValue + m_ext_log_num), m_errorArtifactMap.size());
l_return |= 1;
// LCOV_EXCL_STOP
}
@@ -331,6 +309,15 @@ void CErrorEventCfg::GetArtifactRequestVec(
f_refArtifactRequestVec.push_back(l_artifact);
}
}
+
+ // Set external log info
+ if (m_ext_log_num > 0) {
+ for (l_artifactId = 0; l_artifactId < m_ext_log_num; l_artifactId++) {
+ l_artifact.ArtifactId = (EArtifactId) (eArtifactIdMaxValue + l_artifactId);
+ l_artifact.Information = m_errorArtifactMap[l_artifact.ArtifactId];
+ f_refArtifactRequestVec.push_back(l_artifact);
+ }
+ }
}
FRAMEWORKUNIFIEDLOG(ZONE_FUNC, __FUNCTION__, "-");