#include <stdio.h>
#include <stdlib.h>
int
main( int argc, char **argv ) {
STUMPLESS_FACILITY_USER,
STUMPLESS_SEVERITY_INFO,
"example-app-name",
"example-msgid",
"my simple message" );
printf( "a basic entry:\n" );
printf( "\n" );
STUMPLESS_SEVERITY_INFO,
"example-app-name",
"example-msgid",
"string %s and int %d",
"substituted",
334 );
printf( "an entry with format specifiers:\n" );
printf( "\n" );
"string %s and int %d",
"new substitution",
42 );
printf( "the same entry after the message was reset:\n" );
printf( "\n" );
STUMPLESS_SEVERITY_NOTICE,
"company-web-portal",
"failed-login-attempt",
"user failed to authenticate" );
"user", "name", "chester" );
"user", "id", "5763332" );
"user", "locked", "true" );
"try", "number", "3" );
printf( "an entry with structured data:\n" );
STUMPLESS_SEVERITY_NOTICE,
"company-web-portal",
"refresh-request",
"user requested a refresh" );
STUMPLESS_SEVERITY_NOTICE,
"company-web-portal",
"logout",
"user logged out" );
return EXIT_SUCCESS;
}
STUMPLESS_PUBLIC_FUNCTION void stumpless_destroy_element_and_contents(const struct stumpless_element *e)
Destroys an element as well as all params that it contains, freeing any allocated memory.
STUMPLESS_PUBLIC_FUNCTION struct stumpless_element * stumpless_add_param(struct stumpless_element *element, struct stumpless_param *param)
Adds a param to an element.
STUMPLESS_PUBLIC_FUNCTION struct stumpless_element * stumpless_new_element(const char *name)
Creates a new element with the given name.
STUMPLESS_PUBLIC_FUNCTION struct stumpless_entry * stumpless_add_element(struct stumpless_entry *entry, struct stumpless_element *element)
Adds an element to an entry.
STUMPLESS_PUBLIC_FUNCTION void stumpless_destroy_entry_and_contents(const struct stumpless_entry *entry)
Destroys an entry as well as all elements and params that it contains, freeing any allocated memory.
STUMPLESS_PUBLIC_FUNCTION struct stumpless_entry * stumpless_set_entry_message(struct stumpless_entry *entry, const char *message,...)
Sets the message of a given entry.
STUMPLESS_PUBLIC_FUNCTION void stumpless_destroy_entry_only(const struct stumpless_entry *entry)
Destroys an entry, freeing any allocated memory.
STUMPLESS_PUBLIC_FUNCTION struct stumpless_entry * stumpless_new_entry(enum stumpless_facility facility, enum stumpless_severity severity, const char *app_name, const char *msgid, const char *message,...)
Creates a new entry with the given characteristics.
STUMPLESS_PUBLIC_FUNCTION struct stumpless_entry * stumpless_set_entry_param_value_by_name(struct stumpless_entry *entry, const char *element_name, const char *param_name, const char *value)
Sets the value of the first param in the named element an entry.
STUMPLESS_PUBLIC_FUNCTION void stumpless_free_all(void)
Closes the default target if it has been opened, frees all memory allocated internally,...
STUMPLESS_PUBLIC_FUNCTION struct stumpless_param * stumpless_new_param(const char *name, const char *value)
Creates a new param with the given name and value.
STUMPLESS_PUBLIC_FUNCTION struct stumpless_target * stumpless_open_stdout_target(const char *name)
Opens a stream target for the stdout stream.
An element of structured data.
Definition element.h:93
A log entry.
Definition entry.h:60
A parameter within a structured data element.
Definition param.h:93
A target that log entries can be sent to.
Definition target.h:140
The main header file for the stumpless logging library.
STUMPLESS_PUBLIC_FUNCTION void stumpless_close_target(struct stumpless_target *target)
Closes a target.
STUMPLESS_PUBLIC_FUNCTION int stumpless_add_entry(struct stumpless_target *target, const struct stumpless_entry *entry)
Adds an entry into a given target.