Added debug level INIT
This commit is contained in:
parent
3b0b734de1
commit
ff171afd65
14 changed files with 45 additions and 42 deletions
|
|
@ -1050,7 +1050,7 @@ main(int argc,
|
||||||
goto ok;
|
goto ok;
|
||||||
|
|
||||||
/* Debug dump of config options */
|
/* Debug dump of config options */
|
||||||
clicon_option_dump(h, 1);
|
clicon_option_dump(h, CLIXON_DBG_INIT);
|
||||||
|
|
||||||
/* Daemonize and initiate logging. Note error is initiated here to make
|
/* Daemonize and initiate logging. Note error is initiated here to make
|
||||||
daemonized errors OK. Before this stage, errors are logged on stderr
|
daemonized errors OK. Before this stage, errors are logged on stderr
|
||||||
|
|
|
||||||
|
|
@ -983,7 +983,6 @@ yang2cli_container(clixon_handle h,
|
||||||
cprintf(cb, ", hide");
|
cprintf(cb, ", hide");
|
||||||
}
|
}
|
||||||
cprintf(cb, ", act-container;{\n");
|
cprintf(cb, ", act-container;{\n");
|
||||||
|
|
||||||
}
|
}
|
||||||
/* Is schema mount-point? */
|
/* Is schema mount-point? */
|
||||||
if (clicon_option_bool(h, "CLICON_YANG_SCHEMA_MOUNT")){
|
if (clicon_option_bool(h, "CLICON_YANG_SCHEMA_MOUNT")){
|
||||||
|
|
@ -1315,7 +1314,8 @@ yang2cli_stmt(clixon_handle h,
|
||||||
goto done;
|
goto done;
|
||||||
break;
|
break;
|
||||||
case Y_USES:
|
case Y_USES:
|
||||||
if (grouping_treeref && !cornercase && yang2cli_uses(h, ys, level, cb) < 0)
|
if (grouping_treeref && !cornercase)
|
||||||
|
if (yang2cli_uses(h, ys, level, cb) < 0)
|
||||||
goto done;
|
goto done;
|
||||||
break;
|
break;
|
||||||
case Y_CASE:
|
case Y_CASE:
|
||||||
|
|
|
||||||
|
|
@ -894,7 +894,7 @@ main(int argc,
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
/* Debug dump of config options */
|
/* Debug dump of config options */
|
||||||
clicon_option_dump(h, 1);
|
clicon_option_dump(h, CLIXON_DBG_INIT);
|
||||||
|
|
||||||
cligen_line_scrolling_set(cli_cligen(h), clicon_option_int(h,"CLICON_CLI_LINESCROLLING"));
|
cligen_line_scrolling_set(cli_cligen(h), clicon_option_int(h,"CLICON_CLI_LINESCROLLING"));
|
||||||
/* Start CLI history and load from file */
|
/* Start CLI history and load from file */
|
||||||
|
|
|
||||||
|
|
@ -923,7 +923,7 @@ main(int argc,
|
||||||
goto ok;
|
goto ok;
|
||||||
}
|
}
|
||||||
/* Debug dump of config options */
|
/* Debug dump of config options */
|
||||||
clicon_option_dump(h, 1);
|
clicon_option_dump(h, CLIXON_DBG_INIT);
|
||||||
|
|
||||||
/* Send hello request to backend to get session-id back
|
/* Send hello request to backend to get session-id back
|
||||||
* This is done once at the beginning of the session and then this is
|
* This is done once at the beginning of the session and then this is
|
||||||
|
|
|
||||||
|
|
@ -574,7 +574,7 @@ main(int argc,
|
||||||
goto ok;
|
goto ok;
|
||||||
}
|
}
|
||||||
/* Dump configuration options on debug */
|
/* Dump configuration options on debug */
|
||||||
clicon_option_dump(h, 1);
|
clicon_option_dump(h, CLIXON_DBG_INIT);
|
||||||
|
|
||||||
/* Call start function in all plugins before we go interactive */
|
/* Call start function in all plugins before we go interactive */
|
||||||
if (clixon_plugin_start_all(h) < 0)
|
if (clixon_plugin_start_all(h) < 0)
|
||||||
|
|
|
||||||
|
|
@ -839,7 +839,7 @@ restconf_openssl_init(clixon_handle h,
|
||||||
/* If debug was enabled here from config and not initially,
|
/* If debug was enabled here from config and not initially,
|
||||||
* print clixn options and loaded yang files
|
* print clixn options and loaded yang files
|
||||||
*/
|
*/
|
||||||
clicon_option_dump(h, 1);
|
clicon_option_dump(h, CLIXON_DBG_INIT);
|
||||||
}
|
}
|
||||||
if ((x = xpath_first(xrestconf, nsc, "enable-core-dump")) != NULL) {
|
if ((x = xpath_first(xrestconf, nsc, "enable-core-dump")) != NULL) {
|
||||||
/* core dump is enabled on RESTCONF process */
|
/* core dump is enabled on RESTCONF process */
|
||||||
|
|
@ -1318,7 +1318,7 @@ main(int argc,
|
||||||
goto ok;
|
goto ok;
|
||||||
}
|
}
|
||||||
/* Dump configuration options on debug */
|
/* Dump configuration options on debug */
|
||||||
clicon_option_dump(h, 1);
|
clicon_option_dump(h, CLIXON_DBG_INIT);
|
||||||
|
|
||||||
/* Initialize plugin module by creating a handle holding plugin and callback lists */
|
/* Initialize plugin module by creating a handle holding plugin and callback lists */
|
||||||
if (clixon_plugin_module_init(h) < 0)
|
if (clixon_plugin_module_init(h) < 0)
|
||||||
|
|
|
||||||
|
|
@ -553,7 +553,7 @@ main(int argc,
|
||||||
goto done;
|
goto done;
|
||||||
goto ok;
|
goto ok;
|
||||||
}
|
}
|
||||||
clicon_option_dump(h, 1);
|
clicon_option_dump(h, CLIXON_DBG_INIT);
|
||||||
|
|
||||||
/* Send hello request to backend to get session-id back
|
/* Send hello request to backend to get session-id back
|
||||||
* This is done once at the beginning of the session and then this is
|
* This is done once at the beginning of the session and then this is
|
||||||
|
|
|
||||||
|
|
@ -1432,7 +1432,7 @@ clixon_plugin_init(clixon_handle h)
|
||||||
char **argv;
|
char **argv;
|
||||||
int c;
|
int c;
|
||||||
|
|
||||||
clixon_debug(CLIXON_DBG_DEFAULT, "backend");
|
clixon_debug(CLIXON_DBG_INIT, "backend");
|
||||||
|
|
||||||
/* Get user command-line options (after --) */
|
/* Get user command-line options (after --) */
|
||||||
if (clicon_argv_get(h, &argc, &argv) < 0)
|
if (clicon_argv_get(h, &argc, &argv) < 0)
|
||||||
|
|
|
||||||
|
|
@ -241,7 +241,7 @@ clixon_plugin_init(clixon_handle h)
|
||||||
char **argv;
|
char **argv;
|
||||||
int c;
|
int c;
|
||||||
|
|
||||||
clixon_debug(CLIXON_DBG_DEFAULT, "backend nacm");
|
clixon_debug(CLIXON_DBG_INIT, "backend nacm");
|
||||||
/* Get user command-line options (after --) */
|
/* Get user command-line options (after --) */
|
||||||
if (clicon_argv_get(h, &argc, &argv) < 0)
|
if (clicon_argv_get(h, &argc, &argv) < 0)
|
||||||
goto done;
|
goto done;
|
||||||
|
|
|
||||||
|
|
@ -60,24 +60,27 @@
|
||||||
/* Subject area */
|
/* Subject area */
|
||||||
#define CLIXON_DBG_DEFAULT 0x00000001 /* Default logs */
|
#define CLIXON_DBG_DEFAULT 0x00000001 /* Default logs */
|
||||||
#define CLIXON_DBG_MSG 0x00000002 /* In/out messages */
|
#define CLIXON_DBG_MSG 0x00000002 /* In/out messages */
|
||||||
#define CLIXON_DBG_XML 0x00000004 /* XML processing */
|
#define CLIXON_DBG_INIT 0x00000004 /* Initialization */
|
||||||
#define CLIXON_DBG_XPATH 0x00000008 /* XPath processing */
|
#define CLIXON_DBG_XML 0x00000008 /* XML processing */
|
||||||
#define CLIXON_DBG_YANG 0x00000010 /* YANG processing */
|
#define CLIXON_DBG_XPATH 0x00000010 /* XPath processing */
|
||||||
#define CLIXON_DBG_BACKEND 0x00000020 /* Backend-specific */
|
#define CLIXON_DBG_YANG 0x00000020 /* YANG processing */
|
||||||
#define CLIXON_DBG_CLI 0x00000040 /* CLI frontend */
|
#define CLIXON_DBG_BACKEND 0x00000040 /* Backend-specific */
|
||||||
#define CLIXON_DBG_NETCONF 0x00000080 /* NETCONF frontend */
|
#define CLIXON_DBG_CLI 0x00000080 /* CLI frontend */
|
||||||
#define CLIXON_DBG_RESTCONF 0x00000100 /* RESTCONF frontend */
|
#define CLIXON_DBG_NETCONF 0x00000100 /* NETCONF frontend */
|
||||||
#define CLIXON_DBG_SNMP 0x00000200 /* SNMP frontend */
|
#define CLIXON_DBG_RESTCONF 0x00000200 /* RESTCONF frontend */
|
||||||
#define CLIXON_DBG_NACM 0x00000400 /* NACM processing */
|
#define CLIXON_DBG_SNMP 0x00000400 /* SNMP frontend */
|
||||||
#define CLIXON_DBG_PROC 0x00000800 /* Process handling */
|
#define CLIXON_DBG_NACM 0x00000800 /* NACM processing */
|
||||||
#define CLIXON_DBG_DATASTORE 0x00001000 /* Datastore management */
|
#define CLIXON_DBG_PROC 0x00001000 /* Process handling */
|
||||||
#define CLIXON_DBG_EVENT 0x00002000 /* Event processing */
|
#define CLIXON_DBG_DATASTORE 0x00002000 /* Datastore management */
|
||||||
#define CLIXON_DBG_RPC 0x00004000 /* RPC handling */
|
#define CLIXON_DBG_EVENT 0x00004000 /* Event processing */
|
||||||
#define CLIXON_DBG_STREAM 0x00008000 /* Notification streams */
|
#define CLIXON_DBG_RPC 0x00008000 /* RPC handling */
|
||||||
#define CLIXON_DBG_APP 0x00010000 /* External application */
|
#define CLIXON_DBG_STREAM 0x00010000 /* Notification streams */
|
||||||
#define CLIXON_DBG_APP2 0x00020000 /* External application 2 */
|
|
||||||
#define CLIXON_DBG_APP3 0x00040000 /* External application 3 */
|
/* External applications */
|
||||||
#define CLIXON_DBG_SMASK 0x0003ffff /* Subject mask */
|
#define CLIXON_DBG_APP 0x00100000 /* External application */
|
||||||
|
#define CLIXON_DBG_APP2 0x00200000 /* External application 2 */
|
||||||
|
#define CLIXON_DBG_APP3 0x00400000 /* External application 3 */
|
||||||
|
#define CLIXON_DBG_SMASK 0x00ffffff /* Subject mask */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Macros
|
* Macros
|
||||||
|
|
|
||||||
|
|
@ -86,6 +86,7 @@ static clixon_handle _debug_clixon_h = NULL;
|
||||||
static const map_str2int dbgmap[] = {
|
static const map_str2int dbgmap[] = {
|
||||||
{"default", CLIXON_DBG_DEFAULT},
|
{"default", CLIXON_DBG_DEFAULT},
|
||||||
{"msg", CLIXON_DBG_MSG},
|
{"msg", CLIXON_DBG_MSG},
|
||||||
|
{"init", CLIXON_DBG_INIT},
|
||||||
{"xml", CLIXON_DBG_XML},
|
{"xml", CLIXON_DBG_XML},
|
||||||
{"xpath", CLIXON_DBG_XPATH},
|
{"xpath", CLIXON_DBG_XPATH},
|
||||||
{"yang", CLIXON_DBG_YANG},
|
{"yang", CLIXON_DBG_YANG},
|
||||||
|
|
|
||||||
|
|
@ -259,7 +259,7 @@ parse_configfile_one(clixon_handle h,
|
||||||
clixon_err(OE_UNIX, errno, "open configure file: %s", filename);
|
clixon_err(OE_UNIX, errno, "open configure file: %s", filename);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
clixon_debug(CLIXON_DBG_DEFAULT | CLIXON_DBG_DETAIL, "Reading config file %s", filename);
|
clixon_debug(CLIXON_DBG_INIT, "Reading config file %s", filename);
|
||||||
if ((ret = clixon_xml_parse_file(fp, yspec?YB_MODULE:YB_NONE, yspec, &xt, &xerr)) < 0)
|
if ((ret = clixon_xml_parse_file(fp, yspec?YB_MODULE:YB_NONE, yspec, &xt, &xerr)) < 0)
|
||||||
goto done;
|
goto done;
|
||||||
if (ret == 0){
|
if (ret == 0){
|
||||||
|
|
@ -284,7 +284,7 @@ parse_configfile_one(clixon_handle h,
|
||||||
xt = NULL;
|
xt = NULL;
|
||||||
retval = 0;
|
retval = 0;
|
||||||
done:
|
done:
|
||||||
clixon_debug(CLIXON_DBG_DEFAULT | CLIXON_DBG_DETAIL, "Done w/ config file %s retval:%d", filename, retval);
|
clixon_debug(CLIXON_DBG_INIT | CLIXON_DBG_DETAIL, "Done w/ config file %s retval:%d", filename, retval);
|
||||||
if (xt)
|
if (xt)
|
||||||
xml_free(xt);
|
xml_free(xt);
|
||||||
if (fp)
|
if (fp)
|
||||||
|
|
@ -406,8 +406,7 @@ parse_configfile(clixon_handle h,
|
||||||
clixon_err(OE_UNIX, 0, "%s is not a regular file", filename);
|
clixon_err(OE_UNIX, 0, "%s is not a regular file", filename);
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
|
clixon_debug(CLIXON_DBG_INIT, "Reading config file %s", filename);
|
||||||
clixon_debug(CLIXON_DBG_DEFAULT | CLIXON_DBG_DETAIL, "Reading config file %s", filename);
|
|
||||||
/* Parse main config file */
|
/* Parse main config file */
|
||||||
if (parse_configfile_one(h, filename, yspec, &xt) < 0)
|
if (parse_configfile_one(h, filename, yspec, &xt) < 0)
|
||||||
goto done;
|
goto done;
|
||||||
|
|
@ -495,7 +494,7 @@ parse_configfile(clixon_handle h,
|
||||||
*xconfig = xt;
|
*xconfig = xt;
|
||||||
xt = NULL;
|
xt = NULL;
|
||||||
done:
|
done:
|
||||||
clixon_debug(CLIXON_DBG_DEFAULT | CLIXON_DBG_DETAIL, "Done w/ config file %s retval:%d", filename, retval);
|
clixon_debug(CLIXON_DBG_INIT | CLIXON_DBG_DETAIL, "Done w/ config file %s retval:%d", filename, retval);
|
||||||
if (dp)
|
if (dp)
|
||||||
free(dp);
|
free(dp);
|
||||||
if (nsc)
|
if (nsc)
|
||||||
|
|
@ -599,7 +598,7 @@ clicon_options_main(clixon_handle h)
|
||||||
configfile = clicon_hash_value(copt, "CLICON_CONFIGFILE", NULL);
|
configfile = clicon_hash_value(copt, "CLICON_CONFIGFILE", NULL);
|
||||||
if (strlen(configfile) == 0)
|
if (strlen(configfile) == 0)
|
||||||
configfile = clicon_hash_value(copt, "CLICON_CONFIGFILE", NULL);
|
configfile = clicon_hash_value(copt, "CLICON_CONFIGFILE", NULL);
|
||||||
clixon_debug(CLIXON_DBG_DEFAULT, "CLICON_CONFIGFILE=%s", configfile);
|
clixon_debug(CLIXON_DBG_INIT, "CLICON_CONFIGFILE=%s", configfile);
|
||||||
/* File must end with .xml */
|
/* File must end with .xml */
|
||||||
if ((suffix = rindex(configfile, '.')) != NULL){
|
if ((suffix = rindex(configfile, '.')) != NULL){
|
||||||
suffix++;
|
suffix++;
|
||||||
|
|
|
||||||
|
|
@ -328,7 +328,7 @@ plugin_load_one(clixon_handle h,
|
||||||
char *p;
|
char *p;
|
||||||
void *wh = NULL;
|
void *wh = NULL;
|
||||||
|
|
||||||
clixon_debug(CLIXON_DBG_DEFAULT, "file:%s function:%s", file, function);
|
clixon_debug(CLIXON_DBG_INIT, "file:%s function:%s", file, function);
|
||||||
dlerror(); /* Clear any existing error */
|
dlerror(); /* Clear any existing error */
|
||||||
if ((handle = dlopen(file, dlflags)) == NULL) {
|
if ((handle = dlopen(file, dlflags)) == NULL) {
|
||||||
error = (char*)dlerror();
|
error = (char*)dlerror();
|
||||||
|
|
@ -383,7 +383,7 @@ plugin_load_one(clixon_handle h,
|
||||||
}
|
}
|
||||||
retval = 1;
|
retval = 1;
|
||||||
done:
|
done:
|
||||||
clixon_debug(CLIXON_DBG_DEFAULT, "retval:%d", retval);
|
clixon_debug(CLIXON_DBG_INIT | CLIXON_DBG_DETAIL, "retval:%d", retval);
|
||||||
if (wh != NULL)
|
if (wh != NULL)
|
||||||
free(wh);
|
free(wh);
|
||||||
if (retval != 1 && handle)
|
if (retval != 1 && handle)
|
||||||
|
|
@ -418,7 +418,7 @@ clixon_plugins_load(clixon_handle h,
|
||||||
plugin_module_struct *ms = plugin_module_struct_get(h);
|
plugin_module_struct *ms = plugin_module_struct_get(h);
|
||||||
int dlflags;
|
int dlflags;
|
||||||
|
|
||||||
clixon_debug(CLIXON_DBG_DEFAULT | CLIXON_DBG_DETAIL, "");
|
clixon_debug(CLIXON_DBG_INIT | CLIXON_DBG_DETAIL, "");
|
||||||
if (ms == NULL){
|
if (ms == NULL){
|
||||||
clixon_err(OE_PLUGIN, EINVAL, "plugin module not initialized");
|
clixon_err(OE_PLUGIN, EINVAL, "plugin module not initialized");
|
||||||
goto done;
|
goto done;
|
||||||
|
|
@ -429,7 +429,7 @@ clixon_plugins_load(clixon_handle h,
|
||||||
/* Load all plugins */
|
/* Load all plugins */
|
||||||
for (i = 0; i < ndp; i++) {
|
for (i = 0; i < ndp; i++) {
|
||||||
snprintf(filename, MAXPATHLEN-1, "%s/%s", dir, dp[i].d_name);
|
snprintf(filename, MAXPATHLEN-1, "%s/%s", dir, dp[i].d_name);
|
||||||
clixon_debug(CLIXON_DBG_DEFAULT, "Loading plugin '%s'", filename);
|
clixon_debug(CLIXON_DBG_INIT, "Loading plugin '%s'", filename);
|
||||||
dlflags = RTLD_NOW;
|
dlflags = RTLD_NOW;
|
||||||
if (clicon_option_bool(h, "CLICON_PLUGIN_DLOPEN_GLOBAL"))
|
if (clicon_option_bool(h, "CLICON_PLUGIN_DLOPEN_GLOBAL"))
|
||||||
dlflags |= RTLD_GLOBAL;
|
dlflags |= RTLD_GLOBAL;
|
||||||
|
|
@ -471,7 +471,7 @@ clixon_pseudo_plugin(clixon_handle h,
|
||||||
clixon_plugin_t *cp = NULL;
|
clixon_plugin_t *cp = NULL;
|
||||||
plugin_module_struct *ms = plugin_module_struct_get(h);
|
plugin_module_struct *ms = plugin_module_struct_get(h);
|
||||||
|
|
||||||
clixon_debug(CLIXON_DBG_DEFAULT, "%s", name);
|
clixon_debug(CLIXON_DBG_INIT, "%s", name);
|
||||||
if (ms == NULL){
|
if (ms == NULL){
|
||||||
clixon_err(OE_PLUGIN, EINVAL, "plugin module not initialized");
|
clixon_err(OE_PLUGIN, EINVAL, "plugin module not initialized");
|
||||||
goto done;
|
goto done;
|
||||||
|
|
|
||||||
|
|
@ -302,7 +302,7 @@ pidfile_write(char *pidfile)
|
||||||
clixon_err(OE_DAEMON, errno, "Could not write pid to %s", pidfile);
|
clixon_err(OE_DAEMON, errno, "Could not write pid to %s", pidfile);
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
clixon_debug(CLIXON_DBG_DEFAULT, "Opened pidfile %s with pid %d", pidfile, getpid());
|
clixon_debug(CLIXON_DBG_INIT, "Opened pidfile %s with pid %d", pidfile, getpid());
|
||||||
retval = 0;
|
retval = 0;
|
||||||
done:
|
done:
|
||||||
if (f != NULL)
|
if (f != NULL)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue