1 /*----------------------------------------------------------------------------*/
2 /* Xymon utility to convert the deprecated NK tags to a critical.cfg */
3 /* */
4 /* Copyright (C) 2006-2011 Henrik Storner <henrik@hswn.dk> */
5 /* */
6 /* This program is released under the GNU General Public License (GPL), */
7 /* version 2. See the file "COPYING" for details. */
8 /* */
9 /*----------------------------------------------------------------------------*/
10
11 static char rcsid[] = "$Id: convertnk.c 6712 2011-07-31 21:01:52Z storner $";
12
13 #include <string.h>
14 #include <stdlib.h>
15 #include <unistd.h>
16 #include <stdio.h>
17
18 #include "libxymon.h"
19
main(int argc,char * argv[])20 int main(int argc, char *argv[])
21 {
22 void *walk;
23
24 load_hostnames(xgetenv("HOSTSCFG"), NULL, get_fqdn());
25
26 for (walk = first_host(); (walk); walk=next_host(walk, 0)) {
27 char *nk, *nktime, *tok;
28
29 nk = xmh_item(walk, XMH_NK); if (!nk) continue;
30 nktime = xmh_item(walk, XMH_NKTIME);
31
32 nk = strdup(nk);
33
34 tok = strtok(nk, ",");
35 while (tok) {
36 char *hostname = xmh_item(walk, XMH_HOSTNAME);
37 char *startstr = "", *endstr = "", *ttgroup = "", *ttextra = "", *updinfo = "Migrated";
38 int priority = 2;
39
40 fprintf(stdout, "%s|%s|%s|%s|%s|%d|%s|%s|%s\n",
41 hostname, tok,
42 startstr, endstr,
43 (nktime ? nktime : ""),
44 priority, ttgroup, ttextra, updinfo);
45
46 tok = strtok(NULL, ",");
47 }
48
49 xfree(nk);
50 }
51
52 return 0;
53 }
54
55