aboutsummaryrefslogtreecommitdiffstats
path: root/library/cpp/logger/rotating_file.h
blob: dd585c43610d2b33d3fa558464a3d61503eea104 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#pragma once 
 
#include "backend.h" 
 
#include <util/generic/fwd.h>
#include <util/generic/ptr.h> 
 
class TRotatingFileLogBackend: public TLogBackend { 
public: 
    TRotatingFileLogBackend(const TString& preRotatePath, const TString& postRotatePath, const ui64 maxSizeBytes); 
    TRotatingFileLogBackend(const TString& path, const ui64 maxSizeBytes, const ui32 rotatedFilesCount);
    ~TRotatingFileLogBackend() override; 
 
    void WriteData(const TLogRecord& rec) override; 
    void ReopenLog() override; 
 
private: 
    class TImpl; 
    TAtomicSharedPtr<TImpl> Impl_; 
};