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
17void
19{
20 const char *agent = nullptr;
21
22 if (al->request)
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,
34 agent);
35}
36
time_t squid_curtime
void getLogClientIp(char *buf, size_t bufsz) const
HttpRequest * request
const char * getStr(Http::HdrType id) const
HttpHeader header
Definition Message.h:74
Definition File.h:39
#define MAX_IPSTRLEN
Length of buffer that needs to be allocated to old a null-terminated IP-string.
Definition forward.h:25
void logfilePrintf(Logfile *lf, const char *fmt,...)
Definition File.cc:114
void SquidUserAgent(const AccessLogEntryPointer &al, Logfile *logfile)
Display log details in useragent format.
const char * FormatHttpd(time_t)
Definition gadgets.cc:116