]> git.ipfire.org Git - thirdparty/squid.git/blob - src/adaptation/icap/icap_log.cc
Merge from trunk
[thirdparty/squid.git] / src / adaptation / icap / icap_log.cc
1 #include "squid.h"
2 #include "icap_log.h"
3 #include "AccessLogEntry.h"
4 #include "log/CustomLog.h"
5 #include "log/File.h"
6 #include "log/Formats.h"
7 #include "SquidConfig.h"
8
9 int IcapLogfileStatus = LOG_DISABLE;
10
11 void
12 icapLogOpen()
13 {
14 CustomLog *log;
15
16 for (log = Config.Log.icaplogs; log; log = log->next) {
17 if (log->type == Log::Format::CLF_NONE)
18 continue;
19
20 log->logfile = logfileOpen(log->filename, log->bufferSize, log->fatal);
21
22 IcapLogfileStatus = LOG_ENABLE;
23 }
24 }
25
26 void
27 icapLogClose()
28 {
29 CustomLog *log;
30
31 for (log = Config.Log.icaplogs; log; log = log->next) {
32 if (log->logfile) {
33 logfileClose(log->logfile);
34 log->logfile = NULL;
35 }
36 }
37 }
38
39 void
40 icapLogRotate()
41 {
42 for (CustomLog* log = Config.Log.icaplogs; log; log = log->next) {
43 if (log->logfile) {
44 logfileRotate(log->logfile);
45 }
46 }
47 }
48
49 void icapLogLog(AccessLogEntry::Pointer &al, ACLChecklist * checklist)
50 {
51 if (IcapLogfileStatus == LOG_ENABLE)
52 accessLogLogTo(Config.Log.icaplogs, al, checklist);
53 }