add more details to E2_TERM_KEEP_ALIVE_RESPONSE
[ric-plt/e2.git] / RIC-E2-TERMINATION / sctpThread.cpp
index d339765..f4ed536 100644 (file)
@@ -213,13 +213,20 @@ int main(const int argc, char **argv) {
 
     std::string pod = conf.getStringValue("pod_name");
     if (pod.length() == 0) {
-        mdclog_write(MDCLOG_ERR, "illigal pod_name");
+        mdclog_write(MDCLOG_ERR, "illigal pod_name in config file");
         exit(-1);
     }
-    sctpParams.podName.assign(getenv(sctpParams.podName.c_str()));
-    if (sctpParams.podName.length() == 0) {
-        mdclog_write(MDCLOG_ERR, "illigal pod_name");
+    auto *podName = getenv(pod.c_str());
+    if (podName == nullptr) {
+        mdclog_write(MDCLOG_ERR, "illigal pod_name or environment varible not exists : %s", pod.c_str());
         exit(-1);
+
+    } else {
+        sctpParams.podName.assign(podName);
+        if (sctpParams.podName.length() == 0) {
+            mdclog_write(MDCLOG_ERR, "illigal pod_name");
+            exit(-1);
+        }
     }
 
     tmpStr = conf.getStringValue("trace");
@@ -240,24 +247,25 @@ int main(const int argc, char **argv) {
             st >> 32, st & 0xFFFFFFFF, (int64_t)en >> 32, en & 0xFFFFFFFF);
     mdclog_write(MDCLOG_INFO, "ellapsed time = %5.9f\n", (double)(en - st)/cpuClock);
 
+    sctpParams.ka_message_length = snprintf(sctpParams.ka_message, 4096, "{\"address\": \"%s:%d\","
+                                                                         "\"fqdn\": \"%s\","
+                                                                         "\"pod_name\": \"%s\"}",
+                                            (const char *)sctpParams.myIP.c_str(),
+                                            sctpParams.rmrPort,
+                                            sctpParams.fqdn.c_str(),
+                                            sctpParams.podName.c_str());
+
     if (mdclog_level_get() >= MDCLOG_INFO) {
         mdclog_mdc_add("RMR Port", to_string(sctpParams.rmrPort).c_str());
         mdclog_mdc_add("LogLevel", to_string(sctpParams.logLevel).c_str());
         mdclog_mdc_add("volume", sctpParams.volume);
         mdclog_mdc_add("tmpLogFilespec", tmpLogFilespec);
         mdclog_mdc_add("my ip", sctpParams.myIP.c_str());
+        mdclog_mdc_add("pod name", sctpParams.podName.c_str());
 
-        mdclog_write(MDCLOG_INFO, "running parameters");
+        mdclog_write(MDCLOG_INFO, "running parameters for instance : %s", sctpParams.ka_message);
     }
     mdclog_mdc_clean();
-    sctpParams.ka_message_length = snprintf(sctpParams.ka_message, 4096, "{\"address\": \"%s:%d\","
-                                                                         "\"fqdn\": \"%s\","
-                                                                         "\"pod_name\": \"%s\"}",
-                                            (const char *)sctpParams.myIP.c_str(),
-                                            sctpParams.rmrPort,
-                                            sctpParams.fqdn.c_str(),
-                                            sctpParams.podName.c_str());
-
 
     // Files written to the current working directory
     boostLogger = logging::add_file_log(
@@ -482,6 +490,7 @@ void listener(sctp_params_t *params) {
         mdclog_write(MDCLOG_DEBUG, "started thread number %s", tid);
     }
 
+
     RmrMessagesBuffer_t rmrMessageBuffer{};
     //create and init RMR
     rmrMessageBuffer.rmrCtx = params->rmrCtx;
@@ -2155,9 +2164,10 @@ int receiveXappMessages(int epoll_fd,
             rmrMessageBuffer.sendMessage = rmr_send_msg(rmrMessageBuffer.rmrCtx, rmrMessageBuffer.sendMessage);
             if (rmrMessageBuffer.sendMessage == nullptr) {
                 rmrMessageBuffer.sendMessage = rmr_alloc_msg(rmrMessageBuffer.rmrCtx, RECEIVE_XAPP_BUFFER_SIZE);
-                mdclog_write(MDCLOG_ERR, "Failed to send E2_TERM_KEEP_ALIVE_RESP");
+                mdclog_write(MDCLOG_ERR, "Failed to send E2_TERM_KEEP_ALIVE_RESP RMR message returned NULL");
             } else if (rmrMessageBuffer.sendMessage->state != 0)  {
-                mdclog_write(MDCLOG_ERR, "Failed to send E2_TERM_KEEP_ALIVE_RESP, on RMR state = %d", rmrMessageBuffer.sendMessage->state);
+                mdclog_write(MDCLOG_ERR, "Failed to send E2_TERM_KEEP_ALIVE_RESP, on RMR state = %d ( %s)",
+                        rmrMessageBuffer.sendMessage->state, translateRmrErrorMessages(rmrMessageBuffer.sendMessage->state).c_str());
             } else if (mdclog_level_get() >= MDCLOG_INFO) {
                 mdclog_write(MDCLOG_INFO, "Got Keep Alive Request send : %s", rmrMessageBuffer.ka_message);
             }