* Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
-#ifndef _JUL_H
-#define _JUL_H
+#ifndef LTTNG_SESSIOND_JUL_H
+#define LTTNG_SESSIOND_JUL_H
#define _GNU_SOURCE
#include <inttypes.h>
*/
struct lttng_ht *jul_apps_ht_by_sock;
+struct jul_ht_key {
+ const char *name;
+ enum lttng_loglevel_jul loglevel;
+};
+
/*
* Registration message payload from a JUL application. The PID is used to find
* back the corresponding UST app object so both socket can be linked.
*/
struct lttcomm_sock *sock;
- /*
- * Associated UST app. socket. To get a reference to the ust application
- * object corresponding to that socket, a lookup MUST be done each time
- * since there is important synchronization issue for the lockless hash
- * table shared accross multiple threads.
- */
- int ust_app_sock;
-
/* Initialized with the JUL sock value. */
struct lttng_ht_node_ulong node;
};
* the JUL API.
*/
char name[LTTNG_SYMBOL_NAME_LEN];
+ enum lttng_loglevel_jul loglevel;
+ enum lttng_loglevel_type loglevel_type;
/*
* Tells if the event is enabled or not on the JUL Agent.
/* JUL event API. */
struct jul_event *jul_create_event(const char *name);
void jul_add_event(struct jul_event *event, struct jul_domain *dom);
-struct jul_event *jul_find_by_name(const char *name, struct jul_domain *dom);
+struct jul_event *jul_find_event(const char *name,
+ enum lttng_loglevel_jul loglevel, struct jul_domain *dom);
+struct jul_event *jul_find_event_by_name(const char *name,
+ struct jul_domain *dom);
void jul_delete_event(struct jul_event *event, struct jul_domain *dom);
void jul_destroy_event(struct jul_event *event);
void jul_add_app(struct jul_app *app);
void jul_delete_app(struct jul_app *app);
struct jul_app *jul_find_app_by_sock(int sock);
-void jul_attach_app(struct jul_app *japp);
-void jul_detach_app(struct jul_app *app);
void jul_destroy_app(struct jul_app *app);
+int jul_send_registration_done(struct jul_app *app);
/* JUL action API */
int jul_enable_event(struct jul_event *event);
void jul_update(struct jul_domain *domain, int sock);
int jul_list_events(struct lttng_event **events);
-#endif /* _JUL_H */
+#endif /* LTTNG_SESSIOND_JUL_H */