Browse Source

HPCC-19976 Enable optionality to log_id

Signed-off-by: Felipe Roscoche <felipe.roscoche@lexisnexisrisk.com>

HPCC-19976 Enable optionality to log_id
Felipe Roscoche 7 years ago
parent
commit
f2b76114aa

+ 3 - 1
esp/logging/logginglib/datafieldmap.cpp

@@ -85,12 +85,14 @@ void CLogTable::loadMappings(IPropertyTree& fieldList)
 void CLogGroup::loadMappings(IPropertyTree& fieldList)
 {
     StringBuffer tableName;
+    bool enableLogID;
     Owned<IPropertyTreeIterator> itr = fieldList.getElements("Fieldmap");
     ForEach(*itr)
     {
         ensureInputString(itr->query().queryProp("@table"), true, tableName, -1, "Fieldmap @table required");
+        enableLogID = itr->query().getPropBool("@enableLogID", true);
 
-        Owned<CLogTable> table = new CLogTable(tableName.str());
+        Owned<CLogTable> table = new CLogTable(tableName.str(), enableLogID);
         table->loadMappings(itr->query());
         CIArrayOf<CLogField>& logFields = table->getLogFields();
         if (logFields.length() < 1)

+ 3 - 1
esp/logging/logginglib/datafieldmap.hpp

@@ -47,12 +47,14 @@ public:
 class CLogTable : public CInterface
 {
     StringAttr tableName;
+    bool enableLogID;
     CIArrayOf<CLogField> logFields;
 public:
-    CLogTable(const char* _tableName) : tableName(_tableName) {};
+    CLogTable(const char* _tableName, bool _enableLogID) : tableName(_tableName), enableLogID(_enableLogID) {};
     virtual ~CLogTable() {};
 
     const char* getTableName() { return tableName.get(); };
+    bool getEnableLogID() { return enableLogID; }
     void setTableName(const char* _tableName) { return tableName.set(_tableName); };
     void loadMappings(IPropertyTree& cfg);
     CIArrayOf<CLogField>& getLogFields() { return logFields; };

+ 3 - 1
esp/logging/logginglib/loggingagentbase.cpp

@@ -232,7 +232,9 @@ bool CDBLogAgentBase::buildUpdateLogStatement(IPropertyTree* logRequest, const c
 
     //add any default fields that may be required but not in request.
     addMissingFields(logFields, handledFields, fields, values);
-    appendFieldInfo("log_id", logID, fields, values, true);
+    if (table.getEnableLogID()) {
+        appendFieldInfo("log_id", logID, fields, values, true);
+    }
 
     setUpdateLogStatement(logDB, table.getTableName(), fields.str(), values.str(), updateDBStatement);
     return true;