DtkCore
DTK Core module
FileAppender.h
浏览该文件的文档.
1// SPDX-FileCopyrightText: 2022 UnionTech Software Technology Co., Ltd.
2//
3// SPDX-License-Identifier: LGPL-3.0-or-later
4
5#ifndef FILEAPPENDER_H
6#define FILEAPPENDER_H
7
8// Logger
9#include "dtkcore_global.h"
11
12// Qt
13#include <QFile>
14#include <QTextStream>
15
16DCORE_BEGIN_NAMESPACE
17
18class LIBDTKCORESHARED_EXPORT FileAppender : public AbstractStringAppender
19{
20public:
21 FileAppender(const QString &fileName = QString());
23
24 QString fileName() const;
25 void setFileName(const QString &s);
26
27 qint64 size() const;
28
29protected:
30 virtual void append(const QDateTime &time, Logger::LogLevel level, const char *file, int line,
31 const char *func, const QString &category, const QString &msg);
32 bool openFile();
33 void closeFile();
34
35private:
36 QFile m_logFile;
37 QTextStream m_logStream;
38 mutable QMutex m_logFileMutex;
39};
40
41DCORE_END_NAMESPACE
42
43#endif // FILEAPPENDER_H
AbstractStringAppender类为处理纯文本格式的Appender提供了一个方便的基础日志
Definition: AbstractStringAppender.h:16
简单的appender,将日志记录写到纯文本文件中
Definition: FileAppender.h:19
void setFileName(const QString &s)
设置文件的名称。该名称可以没有路径,可以是相对路径,也可以是绝对路径
qint64 size() const
返回日志文件大小
QString fileName() const
返回由setFileName()设置的名称,或返回FileAppender构造函数传入的fileName
FileAppender(const QString &fileName=QString())
构造函数,分配给具有给定<fileName>的文件
LogLevel
日志等级
Definition: Logger.h:22