Squid Web Cache
master
Loading...
Searching...
No Matches
FormatSquidUseragent.cc
Go to the documentation of this file.
1
/*
2
* Copyright (C) 1996-2025 The Squid Software Foundation and contributors
3
*
4
* Squid software is distributed under GPLv2+ license and includes
5
* contributions from numerous individuals and organizations.
6
* Please see the COPYING and CONTRIBUTORS files for details.
7
*/
8
9
/* DEBUG: section 46 Access Log - Squid useragent format */
10
11
#include "
squid.h
"
12
#include "
AccessLogEntry.h
"
13
#include "
HttpRequest.h
"
14
#include "
log/File.h
"
15
#include "
log/Formats.h
"
16
17
void
18
Log::Format::SquidUserAgent
(
const
AccessLogEntry::Pointer
&al,
Logfile
* logfile)
19
{
20
const
char
*agent =
nullptr
;
21
22
if
(al->
request
)
23
agent = al->
request
->
header
.
getStr
(
Http::HdrType::USER_AGENT
);
24
25
if
(!agent || *agent ==
'\0'
)
26
agent =
"-"
;
27
28
char
clientip[
MAX_IPSTRLEN
];
29
al->
getLogClientIp
(clientip,
MAX_IPSTRLEN
);
30
31
logfilePrintf
(logfile,
"%s [%s] \"%s\"\n"
,
32
clientip,
33
Time::FormatHttpd
(
squid_curtime
),
34
agent);
35
}
36
AccessLogEntry.h
Formats.h
HttpRequest.h
squid_curtime
time_t squid_curtime
Definition
stub_libtime.cc:20
AccessLogEntry::getLogClientIp
void getLogClientIp(char *buf, size_t bufsz) const
Definition
AccessLogEntry.cc:20
AccessLogEntry::request
HttpRequest * request
Definition
AccessLogEntry.h:192
HttpHeader::getStr
const char * getStr(Http::HdrType id) const
Definition
HttpHeader.cc:1296
Http::Message::header
HttpHeader header
Definition
Message.h:74
Logfile
Definition
File.h:39
RefCount< AccessLogEntry >
MAX_IPSTRLEN
#define MAX_IPSTRLEN
Length of buffer that needs to be allocated to old a null-terminated IP-string.
Definition
forward.h:25
logfilePrintf
void logfilePrintf(Logfile *lf, const char *fmt,...)
Definition
File.cc:114
File.h
Http::USER_AGENT
@ USER_AGENT
Definition
RegisteredHeaders.h:103
Log::Format::SquidUserAgent
void SquidUserAgent(const AccessLogEntryPointer &al, Logfile *logfile)
Display log details in useragent format.
Definition
FormatSquidUseragent.cc:18
Time::FormatHttpd
const char * FormatHttpd(time_t)
Definition
gadgets.cc:116
squid.h
squid
src
log
FormatSquidUseragent.cc
Generated by
1.9.8