Don't initialize defaults in library constructor
[lttng-tools.git] / src / common / defaults.h
index 8a798744456f6420fa441ac7a5d5e2effce56d09..6bf06becdde069ff04e26900c99013d8f62c4da1 100644 (file)
@@ -1,6 +1,7 @@
 /*
  * Copyright (C) 2011 - David Goulet <david.goulet@polymtl.ca>
  *                      Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
+ *               2015 - Jérémie Galarneau <jeremie.galarneau@efficios.com>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License, version 2 only,
@@ -19,7 +20,7 @@
 #ifndef _DEFAULTS_H
 #define _DEFAULTS_H
 
-#include <config.h>
+#include <src/common/macros.h>
 
 /* Default unix group name for tracing. */
 #define DEFAULT_TRACING_GROUP                   "tracing"
 #define DEFAULT_LTTNG_RUNDIR                    CONFIG_LTTNG_SYSTEM_RUNDIR
 #define DEFAULT_LTTNG_HOME_RUNDIR               "%s/.lttng"
 #define DEFAULT_LTTNG_SESSIOND_PIDFILE          "lttng-sessiond.pid"
-#define DEFAULT_LTTNG_SESSIOND_JULPORT_FILE     "jul.port"
+#define DEFAULT_LTTNG_SESSIOND_AGENTPORT_FILE   "agent.port"
+#define DEFAULT_LTTNG_SESSIOND_LOCKFILE         "lttng-sessiond.lck"
+
+/* Default probes list */
+#define DEFAULT_LTTNG_KMOD_PROBES              "LTTNG_KMOD_PROBES"
+
+/* Default extra probes list */
+#define DEFAULT_LTTNG_EXTRA_KMOD_PROBES                "LTTNG_EXTRA_KMOD_PROBES"
 
 /* Default unix socket path */
 #define DEFAULT_GLOBAL_CLIENT_UNIX_SOCK         DEFAULT_LTTNG_RUNDIR "/client-lttng-sessiond"
 #define DEFAULT_HOME_RELAY_HEALTH_UNIX_SOCK            DEFAULT_LTTNG_HOME_RUNDIR "/relayd/health-%d"
 
 /* Default daemon configuration file path */
+#define DEFAULT_SYSTEM_CONFIGPATH               CONFIG_LTTNG_SYSTEM_CONFIGDIR \
+       "/lttng"
+
 #define DEFAULT_DAEMON_CONFIG_FILE              "lttng.conf"
 #define DEFAULT_DAEMON_HOME_CONFIGPATH          DEFAULT_LTTNG_HOME_RUNDIR "/" \
        DEFAULT_DAEMON_CONFIG_FILE
-#define DEFAULT_DAEMON_SYSTEM_CONFIGPATH        CONFIG_LTTNG_SYSTEM_CONFIGDIR \
-       "/lttng/" DEFAULT_DAEMON_CONFIG_FILE
+#define DEFAULT_DAEMON_SYSTEM_CONFIGPATH        DEFAULT_SYSTEM_CONFIGPATH "/" \
+       DEFAULT_DAEMON_CONFIG_FILE
+
+/* Default session configuration file path */
+#define DEFAULT_SESSION_PATH                    "sessions"
+/* Auto load session in that directory. */
+#define DEFAULT_SESSION_CONFIG_AUTOLOAD         "auto"
+#define DEFAULT_SESSION_HOME_CONFIGPATH         DEFAULT_LTTNG_HOME_RUNDIR "/" \
+       DEFAULT_SESSION_PATH
+#define DEFAULT_SESSION_SYSTEM_CONFIGPATH       DEFAULT_SYSTEM_CONFIGPATH "/" \
+       DEFAULT_SESSION_PATH
+#define DEFAULT_SESSION_CONFIG_FILE_EXTENSION   ".lttng"
+#define DEFAULT_SESSION_CONFIG_XSD_FILENAME     "session.xsd"
+#define DEFAULT_SESSION_CONFIG_XSD_PATH         CONFIG_LTTNG_SYSTEM_DATADIR "/xml/lttng/"
+#define DEFAULT_SESSION_CONFIG_XSD_PATH_ENV     "LTTNG_SESSION_CONFIG_XSD_PATH"
 
 #define DEFAULT_GLOBAL_APPS_UNIX_SOCK \
        DEFAULT_LTTNG_RUNDIR "/" LTTNG_UST_SOCK_FILENAME
 /* Default JUL domain channel name. */
 #define DEFAULT_JUL_CHANNEL_NAME        "lttng_jul_channel"
 /* Default JUL tracepoint name. This is a wildcard for the JUL domain. */
-#define DEFAULT_SYS_JUL_EVENT_NAME      "lttng_jul:sys*"
-#define DEFAULT_USER_JUL_EVENT_NAME     "lttng_jul:user*"
-/* JUL default channel name. */
+#define DEFAULT_JUL_EVENT_COMPONENT     "lttng_jul"
+#define DEFAULT_JUL_EVENT_NAME          DEFAULT_JUL_EVENT_COMPONENT ":*"
+
+/* Default log4j domain channel name. */
+#define DEFAULT_LOG4J_CHANNEL_NAME        "lttng_log4j_channel"
+/* Default log4j tracepoint name. This is a wildcard for the log4j domain. */
+#define DEFAULT_LOG4J_EVENT_COMPONENT     "lttng_log4j"
+#define DEFAULT_LOG4J_EVENT_NAME          DEFAULT_LOG4J_EVENT_COMPONENT ":*"
+
+/* Default Python domain channel name. */
+#define DEFAULT_PYTHON_CHANNEL_NAME       "lttng_python_channel"
+/* Default Python tracepoint name. This is a wildcard for the python domain. */
+#define DEFAULT_PYTHON_EVENT_COMPONENT    "lttng_python"
+#define DEFAULT_PYTHON_EVENT_NAME         DEFAULT_PYTHON_EVENT_COMPONENT ":*"
+
 #define DEFAULT_CHANNEL_OVERWRITE       0
 #define DEFAULT_CHANNEL_TRACEFILE_SIZE  0
 #define DEFAULT_CHANNEL_TRACEFILE_COUNT 0
 #define DEFAULT_NETWORK_CONTROL_BIND_ADDRESS    "0.0.0.0"
 #define DEFAULT_NETWORK_DATA_BIND_ADDRESS       "0.0.0.0"
 #define DEFAULT_NETWORK_VIEWER_BIND_ADDRESS     "localhost"
-#define DEFAULT_JUL_BIND_ADDRESS                "localhost"
+#define DEFAULT_AGENT_BIND_ADDRESS              "localhost"
 
 /* Default network ports for trace streaming support. */
 #define DEFAULT_NETWORK_CONTROL_PORT        5342
 #define DEFAULT_NETWORK_DATA_PORT           5343
 #define DEFAULT_NETWORK_VIEWER_PORT         5344
 
-/* JUL registration TCP port. */
-#define DEFAULT_JUL_TCP_PORT                5345
+/* Agent registration TCP port. */
+#define DEFAULT_AGENT_TCP_PORT              5345
 
 /*
  * If a thread stalls for this amount of time, it will be considered bogus (bad
 /* Default lttng command live timer value in usec. */
 #define DEFAULT_LTTNG_LIVE_TIMER                       1000000
 
-extern size_t default_channel_subbuf_size;
-extern size_t default_metadata_subbuf_size;
-extern size_t default_ust_pid_channel_subbuf_size;
-extern size_t default_ust_uid_channel_subbuf_size;
-extern size_t default_kernel_channel_subbuf_size;
+/* Default runas worker name */
+#define DEFAULT_RUN_AS_WORKER_NAME                     "lttng-runas"
 
 /*
  * Returns the default subbuf size.
@@ -279,11 +312,8 @@ extern size_t default_kernel_channel_subbuf_size;
  * This function depends on a value that is set at constructor time, so it is
  * unsafe to call it from another constructor.
  */
-static inline
-size_t default_get_channel_subbuf_size(void)
-{
-       return default_channel_subbuf_size;
-}
+LTTNG_HIDDEN
+size_t default_get_channel_subbuf_size(void);
 
 /*
  * Returns the default metadata subbuf size.
@@ -291,11 +321,8 @@ size_t default_get_channel_subbuf_size(void)
  * This function depends on a value that is set at constructor time, so it is
  * unsafe to call it from another constructor.
  */
-static inline
-size_t default_get_metadata_subbuf_size(void)
-{
-       return default_metadata_subbuf_size;
-}
+LTTNG_HIDDEN
+size_t default_get_metadata_subbuf_size(void);
 
 /*
  * Returns the default subbuf size for the kernel domain.
@@ -303,11 +330,8 @@ size_t default_get_metadata_subbuf_size(void)
  * This function depends on a value that is set at constructor time, so it is
  * unsafe to call it from another constructor.
  */
-static inline
-size_t default_get_kernel_channel_subbuf_size(void)
-{
-       return default_kernel_channel_subbuf_size;
-}
+LTTNG_HIDDEN
+size_t default_get_kernel_channel_subbuf_size(void);
 
 /*
  * Returns the default subbuf size for the UST domain per PID.
@@ -315,11 +339,8 @@ size_t default_get_kernel_channel_subbuf_size(void)
  * This function depends on a value that is set at constructor time, so it is
  * unsafe to call it from another constructor.
  */
-static inline
-size_t default_get_ust_pid_channel_subbuf_size(void)
-{
-       return default_ust_pid_channel_subbuf_size;
-}
+LTTNG_HIDDEN
+size_t default_get_ust_pid_channel_subbuf_size(void);
 
 /*
  * Returns the default subbuf size for the UST domain per UID.
@@ -327,10 +348,7 @@ size_t default_get_ust_pid_channel_subbuf_size(void)
  * This function depends on a value that is set at constructor time, so it is
  * unsafe to call it from another constructor.
  */
-static inline
-size_t default_get_ust_uid_channel_subbuf_size(void)
-{
-       return default_ust_uid_channel_subbuf_size;
-}
+LTTNG_HIDDEN
+size_t default_get_ust_uid_channel_subbuf_size(void);
 
 #endif /* _DEFAULTS_H */
This page took 0.025225 seconds and 4 git commands to generate.