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

Reply via email to