chiark / gitweb /
systemctl: limit logs in status to current boot
[elogind.git] / src / shared / logs-show.h
index 4e6743254bda9e0def1720ffa5d6a72fb1a19a57..c9a9ad3e9195413239bc3b062d031aa4c3c3c601 100644 (file)
 ***/
 
 #include <stdbool.h>
+#include <unistd.h>
+#include <sys/types.h>
 
 #include <systemd/sd-journal.h>
 
 #include "util.h"
+#include "output-mode.h"
 
-typedef enum OutputMode {
-        OUTPUT_SHORT,
-        OUTPUT_SHORT_MONOTONIC,
-        OUTPUT_VERBOSE,
-        OUTPUT_EXPORT,
-        OUTPUT_JSON,
-        OUTPUT_CAT,
-        _OUTPUT_MODE_MAX,
-        _OUTPUT_MODE_INVALID = -1
-} OutputMode;
-
-typedef enum OutputFlags {
-        OUTPUT_SHOW_ALL = 1 << 0,
-        OUTPUT_MONOTONIC_MODE = 1 << 1,
-        OUTPUT_FOLLOW = 1 << 2,
-        OUTPUT_WARN_CUTOFF = 1 << 3,
-        OUTPUT_FULL_WIDTH = 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_match_this_boot(sd_journal *j);
+
+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);
-OutputMode output_mode_from_string(const char *s);
+const char* output_mode_to_string(OutputMode m) _const_;
+OutputMode output_mode_from_string(const char *s) _pure_;