X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fshared%2Flogs-show.h;h=5a4c9f24d7bad7009c724e049a39b59a427ffc2e;hb=9f26c90cb50c45d4549c4dd569917b4ac143b94d;hp=3e6b6e0f643edebb29fc602a7cc36050eb6b6dcf;hpb=a6e87e90ede66815989ba2db92a07102a69906fe;p=elogind.git diff --git a/src/shared/logs-show.h b/src/shared/logs-show.h index 3e6b6e0f6..5a4c9f24d 100644 --- a/src/shared/logs-show.h +++ b/src/shared/logs-show.h @@ -22,40 +22,45 @@ ***/ #include +#include +#include #include #include "util.h" +#include "output-mode.h" -typedef enum OutputMode { - OUTPUT_SHORT, - OUTPUT_SHORT_MONOTONIC, - OUTPUT_VERBOSE, - OUTPUT_EXPORT, - OUTPUT_JSON, - OUTPUT_JSON_PRETTY, - OUTPUT_CAT, - _OUTPUT_MODE_MAX, - _OUTPUT_MODE_INVALID = -1 -} OutputMode; - -typedef enum OutputFlags { - OUTPUT_SHOW_ALL = 1 << 0, - OUTPUT_FOLLOW = 1 << 1, - OUTPUT_WARN_CUTOFF = 1 << 2, - OUTPUT_FULL_WIDTH = 1 << 3, - OUTPUT_COLOR = 1 << 4 -} OutputFlags; - -int output_journal(sd_journal *j, OutputMode mode, unsigned line, - unsigned n_columns, OutputFlags flags); +int output_journal( + FILE *f, + sd_journal *j, + OutputMode mode, + unsigned n_columns, + OutputFlags flags); + +int add_matches_for_unit( + sd_journal *j, + const char *unit); + +int add_matches_for_user_unit( + sd_journal *j, + const char *unit, + uid_t uid); int show_journal_by_unit( + FILE *f, const char *unit, OutputMode mode, unsigned n_columns, usec_t not_before, unsigned how_many, + uid_t uid, + OutputFlags flags, + bool system); + +void json_escape( + FILE *f, + const char* p, + size_t l, OutputFlags flags); const char* output_mode_to_string(OutputMode m);