But, you should also take care of the case when this value is empty(does not get set for whatever reason). - Mathi.
> -----Original Message----- > From: Hans Nordebäck [mailto:hans.nordeb...@ericsson.com] > Sent: Thursday, December 19, 2013 3:28 PM > To: Mathivanan Naickan Palanivelu; Anders Widell > Cc: opensaf-devel@lists.sourceforge.net > Subject: RE: [PATCH 1 of 1] osaf: Improve fault analyse by using current > changeset when configuring osaf [#676] > > Hi Mathi, thanks for the quick feedback. Yes I can add point 2 below, and > when the patch is pushed each service should add the > INTERNAL_VERSION_ID like amfd and amfnd in the patch. When analysing > core dumps it is good to know the changeset ./BR HansN > > -----Original Message----- > From: Mathivanan Naickan Palanivelu [mailto:mathi.naic...@oracle.com] > Sent: den 19 december 2013 10:14 > To: Hans Nordebäck; Anders Widell > Cc: opensaf-devel@lists.sourceforge.net > Subject: RE: [PATCH 1 of 1] osaf: Improve fault analyse by using current > changeset when configuring osaf [#676] > > Hi HansN, > > Good that you are sending this. > Some additional info to think about: > > 1) There is already an existing configure option --with_rpm_release And a > AC_SUBSTed variable OPENSAF_RPM_RELEASE. > You may think of using this... > > 2) If the above variable does not sound interesting to you then now that you > have given this patch, You could print this changeset info during opensaf > startup also. > For eg:- > Like this > diff --git a/osaf/services/infrastructure/nid/scripts/opensafd.in > b/osaf/services/infrastructure/nid/scripts/opensafd.in > --- a/osaf/services/infrastructure/nid/scripts/opensafd.in > +++ b/osaf/services/infrastructure/nid/scripts/opensafd.in > @@ -44,6 +44,8 @@ if [ $osafversion = "1" ] ; then > osafversion=@OPENSAF_RELEASE@ > fi > > +osafcshash=@INTERNAL_VERSION_ID@ > + > unload_tipc() { > > # Unload TIPC if already loaded > @@ -215,7 +217,7 @@ start() { > start_daemon $binary $args > RETVAL=$? > if [ $RETVAL -eq 0 ]; then > - logger -t $prog "OpenSAF($osafversion) services successfully > started" > + logger -t $prog "OpenSAF($osafversion - $osafcshash) services > successfully started" > touch $lockfile > log_success_msg > else > > 3) Sometime back, I was comparing the output of the following command > variants: > $ hg id -i > versus > $ hg parent --template > > There is some caveat around one of this, I forgot which command works best > when working on multiple branches. > > Ack, if you already investigated this, but you may want to think of atleast > comment (2) above. > > Thanks, > Mathi. > > > -----Original Message----- > > From: Hans Nordeback [mailto:hans.nordeb...@ericsson.com] > > Sent: Thursday, December 19, 2013 1:52 PM > > To: anders.wid...@ericsson.com; Mathivanan Naickan Palanivelu > > Cc: opensaf-devel@lists.sourceforge.net > > Subject: [PATCH 1 of 1] osaf: Improve fault analyse by using current > > changeset when configuring osaf [#676] > > > > Makefile.common | 4 ++-- > > configure.ac | 2 ++ > > osaf/services/saf/amf/amfd/main.cc | 4 ++++ > > osaf/services/saf/amf/amfnd/main.cc | 4 ++++ > > 4 files changed, 12 insertions(+), 2 deletions(-) > > > > > > Current changeset can be generated and visible in the syslog and in > > the file in question to improve fault analyse. > > > > diff --git a/Makefile.common b/Makefile.common > > --- a/Makefile.common > > +++ b/Makefile.common > > @@ -12,8 +12,8 @@ AM_CPPFLAGS = \ > > $(CORE_INCLUDES) \ > > $(all_includes) > > > > -AM_CFLAGS = -Wall -fno-strict-aliasing -Werror -fPIC > > @OSAF_HARDEN_FLAGS@ -AM_CXXFLAGS = -Wall -fno-strict-aliasing - > Werror > > -fPIC -D__STDC_FORMAT_MACROS @OSAF_HARDEN_FLAGS@ > > +AM_CFLAGS = -Wall -fno-strict-aliasing -Werror -fPIC > > @OSAF_HARDEN_FLAGS@ - > > DINTERNAL_VERSION_ID='"$(INTERNAL_VERSION_ID)"' > > +AM_CXXFLAGS = -Wall -fno-strict-aliasing -Werror -fPIC - > > D__STDC_FORMAT_MACROS @OSAF_HARDEN_FLAGS@ - > > DINTERNAL_VERSION_ID='"$(INTERNAL_VERSION_ID)"' > > AM_LDFLAGS = -ldl -lrt -lpthread > > > > # > > diff --git a/configure.ac b/configure.ac > > --- a/configure.ac > > +++ b/configure.ac > > @@ -32,6 +32,8 @@ AC_USE_SYSTEM_EXTENSIONS > > OPENSAF_LIB_VERSION=0:0:0 > > AC_SUBST([OPENSAF_LIB_VERSION]) > > > > +AC_SUBST([INTERNAL_VERSION_ID],[$(hg parent --template > > +"{rev}:{node|short}") ]) > > + > > # FIXME: Until the m4 macro gets cleaned for DSO symbol tests and not > > executable AM_CONDITIONAL(HAVE_LD_VERSION_SCRIPT, test "yes" = > > "yes") > > #m4_include([m4/linker-script.m4]) > > diff --git a/osaf/services/saf/amf/amfd/main.cc > > b/osaf/services/saf/amf/amfd/main.cc > > --- a/osaf/services/saf/amf/amfd/main.cc > > +++ b/osaf/services/saf/amf/amfd/main.cc > > @@ -63,6 +63,8 @@ enum { > > FD_IMM // must be last > > }; > > > > +static const char* internal_version_id_ = INTERNAL_VERSION_ID; > > + > > // Singleton Control Block. Statically allocated static AVD_CL_CB > > _control_block; > > > > @@ -627,6 +629,8 @@ static void main_loop(void) > > // will unwind the stack and thus no call chain will be available. > > std::set_new_handler(new_handler); > > > > + syslog(LOG_NOTICE, "Internal version id: %s", internal_version_id_); > > + > > mbx_fd = ncs_ipc_get_sel_obj(&cb->avd_mbx); > > daemon_sigterm_install(&term_fd); > > > > diff --git a/osaf/services/saf/amf/amfnd/main.cc > > b/osaf/services/saf/amf/amfnd/main.cc > > --- a/osaf/services/saf/amf/amfnd/main.cc > > +++ b/osaf/services/saf/amf/amfnd/main.cc > > @@ -37,6 +37,8 @@ > > #define FD_CLM 2 > > #define FD_MBCSV 3 > > > > +static const char* internal_version_id_ = INTERNAL_VERSION_ID; > > + > > static NCS_SEL_OBJ term_sel_obj; /* Selection object for TERM signal > > events */ > > > > static void avnd_evt_process(AVND_EVT *); @@ -551,6 +553,8 @@ void > > avnd_main_process(void) > > > > TRACE_ENTER(); > > > > + syslog(LOG_NOTICE, "Internal version id: %s", internal_version_id_); > > + > > if (avnd_create() != NCSCC_RC_SUCCESS) { > > LOG_ER("avnd_create failed"); > > goto done; ------------------------------------------------------------------------------ Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk _______________________________________________ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel