cluster: RHEL6 - rgmanager: Make clulog filter correctly
Lon Hohberger
lon at fedoraproject.org
Mon Jul 12 17:59:37 UTC 2010
Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=6aed3c2bdb5faa75f4143c376bd33fed8feffaa4
Commit: 6aed3c2bdb5faa75f4143c376bd33fed8feffaa4
Parent: fd5ac603f008627f331ca85146936a947446d7c1
Author: Lon Hohberger <lhh at redhat.com>
AuthorDate: Mon Jul 12 13:50:45 2010 -0400
Committer: Lon Hohberger <lhh at redhat.com>
CommitterDate: Mon Jul 12 13:59:19 2010 -0400
rgmanager: Make clulog filter correctly
Resolves: rhbz#609866
Signed-off-by: Lon Hohberger <lhh at redhat.com>
---
rgmanager/src/utils/clulog.c | 41 +++++++++++++++++------------------------
1 files changed, 17 insertions(+), 24 deletions(-)
diff --git a/rgmanager/src/utils/clulog.c b/rgmanager/src/utils/clulog.c
index 627c5b0..9268657 100644
--- a/rgmanager/src/utils/clulog.c
+++ b/rgmanager/src/utils/clulog.c
@@ -19,58 +19,51 @@
static void
usage(char *progname)
{
- fprintf(stdout, "%s -s severity \"message text\"\n", progname);
+ fprintf(stdout, "%s [-m logname] -s severity \"message text\"\n", progname);
exit(0);
}
-static char *
-log_name(void)
-{
- char lnk[PATH_MAX];
- static char file[PATH_MAX];
-
- snprintf(lnk, sizeof(lnk), "/proc/%d/exe", getppid());
-
- if (readlink(lnk, file, sizeof(file)) < 0) {
- perror("readlink");
- return NULL;
- }
-
- return basename(file);
-}
-
-
int
main(int argc, char **argv)
{
int opt, ccsfd;
int severity = -1;
- char *logmsg = argv[argc-1];
- --argc;
+ char *logmsg = NULL;
+ char *myname = NULL;
- while ((opt = getopt(argc, argv, "s:h")) != EOF) {
+ while ((opt = getopt(argc, argv, "m:l:s:h")) != EOF) {
switch(opt) {
+ case 'l':
case 's':
severity = atoi(optarg);
break;
+ case 'm':
+ myname = optarg;
+ break;
case 'h':
default:
usage(argv[0]);
- break;
+ return 0;
}
}
+ logmsg = argv[optind];
+
if (severity < 0)
severity = SYSLOGLEVEL;
- init_logging(log_name(), 1, severity);
+ init_logging("rgmanager", 1, severity);
ccsfd = ccs_connect();
setup_logging(ccsfd);
ccs_disconnect(ccsfd);
- logt_print(severity, "%s\n", logmsg);
+ if (myname && strcmp(myname, "rgmanager")) {
+ logt_print(severity, "[%s] %s\n", myname, logmsg);
+ } else {
+ logt_print(severity, "%s\n", logmsg);
+ }
close_logging();
return 0;
More information about the cluster-commits
mailing list