ARG STAGE_DIR
-ARG RMR_VER=4.0.5
+ARG RMR_VER=4.4.6
RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/release/packages/debian/stretch/rmr_${RMR_VER}_amd64.deb/download.deb
RUN wget -nv --content-disposition https://packagecloud.io/o-ran-sc/release/packages/debian/stretch/rmr-dev_${RMR_VER}_amd64.deb/download.deb
# now install the binaries and libraries into smaller docker image
-FROM nexus3.o-ran-sc.org:10002/o-ran-sc/ric-app-mc-listener:1.6.0
+FROM nexus3.o-ran-sc.org:10002/o-ran-sc/ric-app-mc-listener:1.7.0
ARG STAGE_DIR
if (rmr_port) {
rmr_sbuf->mtype = rmr_mtype; // fill in the message bits
- rmr_sbuf->len = strlen(linebuf) + 1; // our receiver likely wants a nice acsii-z string
- memcpy(rmr_sbuf->payload, linebuf, rmr_sbuf->len);
+ rmr_sbuf->len = strlen(linebuf) + 1; // our receiver likely wants a nice acsii-z string
+ memcpy(rmr_sbuf->payload, linebuf, rmr_sbuf->len);
rmr_sbuf->state = 0;
rmr_sbuf = rmr_send_msg( mrc, rmr_sbuf); // send it (send returns an empty payload on success, or the original payload on fail/retry)
while( rmr_sbuf->state == RMR_ERR_RETRY ) { // soft failure (device busy?) retry
rmr_sbuf = rmr_send_msg( mrc, rmr_sbuf); // retry send until it's good (simple test; real programmes should do better)
}
- rmr_post_success_cnt++;
-
+ if(rmr_sbuf->state != RMR_OK) {
+ gslog(LOG_WARNING, "rmr_send_msg() failure, strerror(errno) is %s", strerror(errno));
+ rmr_post_failure_cnt++;
+ } else
+ rmr_post_success_cnt++;
+ if (((rmr_post_success_cnt+rmr_post_failure_cnt) % STAT_FREQUENCY) == 0)
+ gslog(LOG_WARNING, "%s: successful RMR posts - %llu, failed RMR posts - %llu", argv[0], rmr_post_success_cnt, rmr_post_failure_cnt);
}
if(curl_address==NULL){
- emit_line();
+ if (!rmr_port) // if neither VES collector nor RMR is specified print to standard output
+ emit_line();
}else{
http_post_request_hdr(curl_endpoint, curl_url, linebuf, &http_code, curl_auth);
if(http_code != 200 && http_code != 202){