1 /* 2 SPDX-FileCopyrightText: 2007 Nicolas Ternisien <nicolas.ternisien@gmail.com> 3 SPDX-FileCopyrightText: 2015 Vyacheslav Matyushin 4 5 SPDX-License-Identifier: GPL-2.0-or-later 6 */ 7 8 #pragma once 9 10 #include "analyzer.h" 11 #include "logFile.h" 12 13 class JournaldAnalyzer : public Analyzer 14 { 15 Q_OBJECT 16 17 public: 18 explicit JournaldAnalyzer(LogMode *mode); 19 20 LogViewColumns initColumns() override; 21 22 void setLogFiles(const QVector<LogFile> &logFiles) override; 23 24 virtual QStringList units() const = 0; 25 26 virtual QStringList syslogIdentifiers() const = 0; 27 28 protected: 29 struct JournalEntry { 30 QDateTime date; 31 QString unit; 32 QString message; 33 int priority; 34 QString bootID; 35 }; 36 37 int updateModel(QList<JournalEntry> &entries, ReadingMode readingMode); 38 }; 39 40