Citrix ADC 13.0

Anpassen der Protokollierung auf dem NSWL-Clientsystem

Sie können die Protokollierung auf dem NSWL-Clientsystem anpassen, indem Sie zusätzliche Änderungen an der NSWL-Clientkonfigurationsdatei (log.conf) vornehmen. Verwenden Sie einen Texteditor, um die Konfigurationsdatei log.conf auf dem Clientsystem zu ändern.

Zum Anpassen der Protokollierung verwenden Sie die Konfigurationsdatei, um Filter und Protokolleigenschaften zu definieren.

  • Protokollfilter. Filtern Sie Protokollinformationen anhand der Host-IP-Adresse, des Domänennamens und des Hostnamens der Webserver.
  • Protokollierungseigenschaften. Jeder Filter verfügt über einen Satz von Protokolleigenschaften. Die Protokolleigenschaften legen fest, wie die gefilterten Protokollinformationen gespeichert werden.

Beispielkonfigurationsdatei

Im Folgenden finden Sie eine Beispielkonfigurationsdatei:

##########
# This is the NSWL configuration file
# Only the default filter is active
# Remove leading # to activate other filters
##########
##########
# Default filter (default on)
# W3C Format logging, new file is created every hour or on reaching 10MB file size,
# and the file name is Exyymmdd.log
##########
Filter default
begin default
        logFormat               W3C
        logInterval             Hourly
        logFileSizeLimit        10
        logFilenameFormat       Ex%`{`%y%m%d}t.log
end default
##########
# Citrix ADC caches example
# CACHE_F filter covers all the transaction with HOST name www.netscaler.com and the listed server ip's
##########
#Filter CACHE_F HOST www.netscaler.com IP 192.168.100.89 192.168.100.95 192.168.100.52 192.168.100.53 ON
##########
# netscaler origin server example
# Not interested in Origin server to Cache traffic transaction logging
##########
#Filter ORIGIN_SERVERS IP 192.168.100.64 192.168.100.65 192.168.100.66 192.168.100.67 192.168.100.225 192.168.100.226 192.168.
100.227 192.168.100.228 OFF
##########
# netscaler image server example
# all the image server logging.
##########
#Filter IMAGE_SERVER HOST www.netscaler.images.com IP 192.168.100.71 192.168.100.72 192.168.100.169 192.168.100.170 192.168.10
0.171 ON
##########
# NCSA Format logging, new file is created every day midnight or on reaching 20MB file size,
# and the file name is /datadisk5/netscaler/log/NS<hostname>/Nsmmddyy.log.
# Exclude objects that ends with .gif .jpg .jar.
##########
#begin ORIGIN_SERVERS
#       logFormat               NCSA
#       logInterval             Daily
#       logFileSizeLimit        40
#       logFilenameFormat       /datadisk5/ORGIN/log/%v/NS%`{`%m%d%y}t.log
#       logExclude              .gif .jpg .jar
#end ORIGIN_SERVERS

##########
# NCSA Format logging, new file is created every day midnight or on reaching 20MB file size,
# and the file name is /datadisk5/netscaler/log/NS<hostname>/Nsmmddyy.log with log record timestamp as GMT.
##########
#begin CACHE_F
#       logFormat               NCSA
#       logInterval             Daily
#       logFileSizeLimit        20
#       logFilenameFormat /datadisk5/netscaler/log/%v/NS%`{`%m%d%y}t.log
#       logtime                 GMT
#end CACHE_F

##########
# W3C Format logging, new file on reaching 20MB and the log file path name is
# atadisk6/netscaler/log/server's ip/Exmmyydd.log with log record timestamp as LOCAL.
##########
#begin IMAGE_SERVER
#       logFormat               W3C
#       logInterval             Size
#       logFileSizeLimit        20
#       logFilenameFormat /datadisk6/netscaler/log/%AEx%`{`%m%d%y}t
#       logtime                 LOCAL
#end IMAGE_SERVER

##########
# Virtual Host by Name firm, can filter out the logging based on the host name by,
##########

#Filter VHOST_F IP 10.101.2.151 NETMASK 255.255.255.0
#begin VHOST_F
#       logFormat               W3C
#       logInterval             Daily
#       logFileSizeLimit        10
logFilenameFormat /ns/prod/vhost/%v/Ex%`{`%m%d%y}t
#end VHOST_F

########## END FILTER CONFIGURATION ##########

Erstellen von Filtern

Sie können die Standardfilterdefinition in der Konfigurationsdatei (log.conf) verwenden, oder Sie können den Filter ändern oder einen neuen Filter erstellen. Sie können mehrere Protokollfilter erstellen.

Hinweis: Die konsolidierte Protokollierung, die Transaktionen protokolliert, für die kein Filter definiert ist, verwendet den Standardfilter, wenn er aktiviert ist. Die konsolidierte Protokollierung aller Server kann nur durch Definition des Standardfilters erfolgen.

Wenn der Server mehrere Websites hostet und jede Website einen eigenen Domänennamen hat und jede Domäne einem virtuellen Server zugeordnet ist, können Sie die Webserverprotokollierung so konfigurieren, dass für jede Website ein separates Protokollverzeichnis erstellt wird. In der folgenden Tabelle werden die Parameter zum Erstellen eines Filters angezeigt.

Parameter Gibt an
filterName Name des Filters. Der Filtername kann alphanumerische Zeichen enthalten und darf nicht länger als 59 Zeichen sein. Filternamen, die länger als 59 Zeichen sind, werden auf 59 Zeichen abgeschnitten.
HOST name Hostname des Servers, für den die Transaktionen protokolliert werden.
IP ip IP-Adresse des Servers, für den Transaktionen protokolliert werden sollen (z. B. wenn der Server mehrere Domänen mit einer IP-Adresse hat).
IP ip 2…ip n: Mehrere IP-Adressen (z. B. wenn die Serverdomäne über mehrere IP-Adressen verfügt).
ip6 ip IPv6-Adresse des Servers, für den Transaktionen protokolliert werden sollen.
IP ip NETMASK mask IP-Adressen und Netzmaskenkombination, die in einem Subnetz verwendet werden sollen.
ON | OFF Aktivieren oder deaktivieren Sie den Filter, um Transaktionen zu protokollieren. Wenn kein Argument ausgewählt ist, ist der Filter aktiviert (ON).

Tabelle 1. Parameter zum Erstellen eines Filters

So erstellen Sie einen Filter

Um einen Filter zu erstellen, geben Sie den folgenden Befehl in der Datei log.conf ein:

  • filter <filterName> <HOST name> | [IP<ip> ] | [IP<ip 2...ip n> ] | <IP ip NETMASK mask> [ON | OFF]

  • filter <filterName> <HOST name> | [IP6 ip/<prefix length>] [ON | OFF]

So erstellen Sie einen Filter für einen virtuellen Server

Um einen Filter für einen virtuellen Server zu erstellen, geben Sie den folgenden Befehl in der Datei log.conf ein:

filter <filterName> <VirtualServer IP address>

Beispiel

Im folgenden Beispiel geben Sie die IP-Adresse 192.168.100.0 und die Netzmaske 255.255.255.0 an. Der Filter gilt für IP-Adressen 192.168.100.1 bis 192.168.100.254.

Filter F1 HOST www.netscaler.com ON
Filter F2 HOST www.netscaler.com IP 192.168.100.151 ON
Filter F3 HOST www.netscaler.com IP 192.168.100.151 192.165.100.152 ON
Filter F4 IP 192.168.100.151
Filter F5 IP 192.168.100.151 HOST www.netscaler.com OFF
Filter F6 HOST www.netscaler.com HOST www.xyz.com HOST www.abcxyz.com IP 192.168.100.200 ON
Filter F7 IP 192.250.100.0 NETMASK 255.255.255.0
Filter F8 HOST www.xyz.com IP 192.250.100.0 NETMASK 255.255.255.0 OFF
For creating filters for servers having IPv6 addresses.
Filter F9 2002::8/112 ON
Filter F10 HOST www.abcd.com IP6 2002::8 ON

Festlegen von Protokolleigenschaften

Die Protokolleigenschaften werden auf alle Protokolleinträge angewendet, die dem Filter zugeordnet sind. Die Definition der Log -Eigenschaft beginnt mit dem Schlüsselwort BEGIN und endet mit END, wie im folgenden Beispiel dargestellt:

BEGIN <filtername>
 logFormat ...
 logFilenameFormat ...
 logInterval ...
 logFileSize ....
 logExclude ....
 logTime ….
 END

Einträge in der Definition können Folgendes umfassen:

  • LogFormat gibt die Webserverprotokollierungsfunktion an, die NCSA, W3C Extended und benutzerdefinierte Protokolldateiformate unterstützt.

    Standardmäßig ist die logformat-Eigenschaft w3c. Geben Sie zum Überschreiben custom oder NCSA in die Konfigurationsdatei ein, z. B.:

     LogFormat NCSA

Hinweis: Für die NCSA und benutzerdefinierte Protokollformate wird die Ortszeit zum Zeitstempeln von Transaktionen und zur Dateirotation verwendet.

  • LogInterval gibt die Intervalle an, in denen neue Protokolldateien erstellt werden. Verwenden Sie einen der folgenden Werte:

    • Stündlich: Jede Stunde wird eine Datei erstellt.
    • Täglich: Eine Datei wird jeden Tag um Mitternacht erstellt. Standardwert.
    • Wöchentlich: Jeden Sonntag um Mitternacht wird eine Datei erstellt.
    • Monatlich: Eine Datei wird am ersten Tag des Monats um Mitternacht erstellt.
    • Keine: Eine Datei wird nur einmal erstellt, wenn die Webserverprotokollierung gestartet wird.</span>

Beispiel:

LogInterval Daily

LogFileSizeLimit gibt die maximale Größe der Protokolldatei in MB an. Es kann mit jedem Protokollintervall (wöchentlich, monatlich usw.) verwendet werden. Eine Datei wird erstellt, wenn die maximale Dateigröße erreicht ist oder wenn die definierte Protokollintervall-Zeit verstrichen ist.

Um dieses Verhalten zu überschreiben, geben Sie die Größe als logintervall-Eigenschaft an, damit eine Datei nur erstellt wird, wenn die Größe der Protokolldatei erreicht ist.

Die Standardeinstellung LogFileSizeLimit ist 10 MB.

Beispiel:

LogFileSizeLimit 35
  • LogFilenameFormat gibt das Dateinamenformat der Protokolldatei an. Der Name der Datei kann von den folgenden Typen sein:

    • Statisch: Gibt eine konstante Zeichenfolge an, die den absoluten Pfad und Dateinamen enthält.

      Dynamisch: Gibt einen Ausdruck an, der das folgende Format enthält:

      • IP-Adresse des Servers
      • Datum (% {format} t)
      • URL-Suffix (%x)
      • Hostname (%v)

Beispiel:

LogFileNameFormat Ex%`{`%m%d%y}t.log

Dieser Befehl erstellt den ersten Dateinamen als exmmddyy.log und erstellt dann jede Stunde eine Datei mit dem Dateinamen: Exmmddyy.log.0, Exmmddyy.log.1,…, Exmmddyy.log.n.

Beispiel:


     LogInterval size
     LogFileSize 100
     LogFileNameFormat Ex%`{`%m%d%y}t

Achtung:

Das im Befehl LogFileNameFormat angegebene Datumsformat%t überschreibt die Protokollintervall-Eigenschaft für diesen Filter. Um zu verhindern, dass täglich eine neue Datei erstellt wird, anstatt wenn die angegebene Protokolldateigröße erreicht ist, verwenden Sie nicht %t im LogFileNameFormat.

  • LogExclude verhindert die Protokollierung von Transaktionen mit den angegebenen Dateierweiterungen.

Beispiel:

     LogExclude .html

Mit diesem Befehl wird eine Protokolldatei erstellt, die Protokolltransaktionen für *.html Dateien ausschließt.

LogTime gibt die Protokollzeit entweder als GMT oder LOCAL an.

Die Standardwerte sind:

  • NCSA-Protokolldateiformat: LOCAL
  • W3C-Protokolldateiformat: GMT.

Grundlegendes zu NCSA- und W3C-Protokollformaten

Citrix ADC unterstützt die folgenden Standard-Protokolldateiformate:

  • Gemeinsames NCSA-Protokollformat
  • Erweitertes W3C-Protokollformat

Gemeinsames NCSA-Protokollformat

Wenn das Protokolldateiformat NCSA ist, werden in der Protokolldatei Protokollinformationen im folgenden Format angezeigt:

Client_IP_address -User_Name [Date:Time -TimeZone] "Method Object HTTP_version" HTTP_StatusCode BytesSent

Wenn Sie das NCSA Common Protokollformat verwenden möchten, geben Sie NCSA in das Argument LogFormat in der Datei log.conf ein.

In der folgenden Tabelle wird das NCSA Common Protokollformat beschrieben.

Argument Gibt an
Client_IP_Adresse Die IP-Adresse des Clientcomputers.
Benutzername Der Benutzername.
Datum Das Datum der Transaktion.
Zeit Der Zeitpunkt, zu dem die Transaktion abgeschlossen wurde.
Zeitzone Die Zeitzone (Greenwich Mean Time oder Ortszeit).
Methode Die Anforderungsmethode (z. B. GET, POST).
Object Die URL.
HTTP_version Die vom Client verwendete HTTP-Version.
HTTP_StatusCode Der Statuscode in der Antwort.
Gesendete Bytes Die Anzahl der vom Server gesendeten Bytes.

Erweitertes W3C-Protokollformat

Eine erweiterte Protokolldatei enthält eine Sequenz von Zeilen, die ASCII-Zeichen enthalten, die entweder durch einen Zeilenvorschub (LF) oder die Sequenz Carriage Return Line Feed (CRLF) beendet werden. Protokolldateigeneratoren müssen der Zeilenbeendungskonvention für die Plattform folgen, auf der sie ausgeführt werden.

Protokollanalysatoren müssen entweder LF- oder CRLF-Formular akzeptieren. Jede Zeile kann entweder eine Direktive oder einen Eintrag enthalten. Wenn Sie das W3C Extended Logformat verwenden möchten, geben Sie W3C als Log-Format Argument in der Datei log.conf ein.

Standardmäßig wird das standardmäßige W3C-Protokollformat intern als benutzerdefiniertes Protokollformat definiert, das wie folgt dargestellt wird:

%`{`%Y-%m-%d%H:%M:%S}t %a %u %S %A %p %m %U %q %s %j %J %T %H %+{user-agent}i %+{cookie} i%+{referer}i

Sie können auch die Reihenfolge ändern oder einige Felder in diesem W3C-Protokollformat entfernen. Beispiel:

logFormat W3C %`{`%Y-%m-%d%H:%M:%S}t %m %U

W3C-Protokolleinträge werden im folgenden Format erstellt:

#Version: 1.0 #Fields: date time cs-method cs-uri #Date: 12-Jun-2001 12:34 2001-06-12 12:34:23 GET /sports/football.html 2001-06-12 12:34:30 GET /sports/football.html

Einträge

Einträge bestehen aus einer Folge von Feldern, die sich auf eine einzelne HTTP-Transaktion beziehen. Felder sind durch Leerzeichen getrennt; Citrix empfiehlt die Verwendung von Tabulatorzeichen. Wenn ein Feld in einem bestimmten Eintrag nicht verwendet wird, markiert ein Bindestrich (-) das ausgelassen Feld.

Richtlinien

Weitere Informationen zum Protokollierungsprozess finden Sie in der Tabelle Richtlinien. Zeilen, die mit dem Pfundzeichen (#) beginnen, enthalten Anweisungen.

Beispiel:

Die folgende Beispielprotokolldatei zeigt die Protokolleinträge im W3C Extended Logformat:

#Version: 1.0 #Fields: time cs-method cs-uri #Date: 12-Jan-1996 00:00:00 00:34:23 GET /sports/football.html 12:21:16 GET /sports/football.html 12:45:52 GET /sports/football.html 12:57:34 GET /sports/football.html

Felder

Die Fields Direktive listet eine Sequenz von Feldbezeichnern auf, die die in jedem Eintrag aufgezeichneten Informationen angeben. Feldbezeichner können eine der folgenden Formen haben:

  • Bezeichner: Bezieht sich auf die Transaktion als Ganzes.
  • Präfix-Identifier: Bezieht sich auf den Informationsaustausch zwischen Parteien, die durch das Wertpräfix definiert sind.
  • Präfix (Header): Gibt den Wert des HTTP-Header-Feldheaders für die Übertragung zwischen Parteien durch das Wertpräfix definiert. Felder, die auf diese Weise angegeben werden, haben immer den Typ.

In der folgenden Tabelle werden definierte Präfixe beschrieben.

Prefix Gibt an
c Client
s Server
r Remote
cs Client zu Server
sc Server zum Client
sr Server zu Remote-Server (Präfix, das von Proxies verwendet wird)
r Remoteserver-zu-Server (Präfix, das von Proxies verwendet wird)
x Anwendungsspezifischer Bezeichner

Beispiele:

Die folgenden Beispiele sind definierte Bezeichner, die Präfixe verwenden:

cs-method: Die Methode in der Anforderung, die vom Client an den Server gesendet wird.

sc (Referer): Das Feld Referer in der Antwort.

c-ip: Die IP-Adresse des Clients.

Bezeichner

In der folgenden Tabelle werden die Kennungen des erweiterten W3C-Protokollformats beschrieben, für die kein Präfix erforderlich ist.

ID Beschreibung
Datum Das Datum, an dem die Transaktion durchgeführt wurde.
Zeit Der Zeitpunkt, zu dem die Transaktion abgeschlossen ist.
Zeitaufwand Die Zeit, die (in Sekunden) für den Abschluss der Transaktion benötigt wird.
Bytes Die Anzahl der übertragenen Bytes.
zwischengespeichert Zeichnet auf, ob ein Cache-Treffer aufgetreten ist. Eine Null gibt einen Cache-Fehler an.

Tabelle 5. W3C Extended Log-Format-Bezeichner (kein Präfix erforderlich)

In der folgenden Tabelle werden die Kennungen des erweiterten W3C-Protokollformats beschrieben, für die ein Präfix erforderlich ist.

ID Beschreibung
IP Die IP-Adresse und die Portnummer.
dns Der DNS-Name.
Status Der Statuscode.
comment Der mit Statuscode zurückgegebene Kommentar.
method Die Methode.
url Die URL.
url-stem Der Stammteil der URL.
url-query Der Abfrageteil der URL.

Tabelle 6. W3C Extended Log-Format-Bezeichner (erfordert ein Präfix)

Mit dem W3C Extended Log-Dateiformat können Sie Protokollfelder auswählen. Diese Felder sind in der folgenden Tabelle dargestellt.

Feld Beschreibung
Datum Das Datum, an dem die Transaktion ausgeführt wird.
Zeit Der Zeitpunkt, zu dem die Transaktion abgeschlossen ist.
Client-IP Die IP-Adresse des Clients.
Benutzername Der Benutzername.
Dienstname Der Dienstname, der immer HTTP ist.
Server-IP Die IP-Adresse des Servers.
Serverport Die Serverportnummer
Methode Die Anforderungsmethode (z. B. GET, POST).
URL-Stamm Der URL-Stamm.
URL-Abfrage Der Abfrageteil der URL.
HTTP-Status Der Statuscode in der Antwort.
Gesendete Bytes Die Anzahl der an den Server gesendeten Bytes (Anforderungsgröße, einschließlich HTTP-Header).
Empfangene Bytes Die Anzahl der vom Server empfangenen Bytes (Antwortgröße, einschließlich HTTP-Header).
Zeitaufwand Die Zeit, die für den Abschluss der Transaktion in Sekunden benötigt wird.
Protokollversion Die Versionsnummer von HTTP, die vom Client verwendet wird.
Benutzeragent Das Feld User-Agent im HTTP-Protokoll.
Cookie Das Cookie-Feld des HTTP-Protokolls.
Referer Das Referer-Feld des HTTP-Protokolls.

Tabelle 7. Erweitertes W3C-Protokolldateiformat (Erlaubt Protokollfelder)

Erstellen eines benutzerdefinierten Protokollformats

Sie können das Anzeigeformat der Protokolldateidaten manuell oder mit der NSWL-Bibliothek anpassen. Mithilfe des benutzerdefinierten Protokollformats können Sie die meisten Protokollformate ableiten, die Apache derzeit unterstützt.

Erstellen eines benutzerdefinierten Protokollformats mit der NSWL-Bibliothek

Verwenden Sie eine der folgenden NSWL-Bibliotheken, je nachdem, ob die ausführbare NSWL-Datei auf einem Windows- oder Solaris-Hostcomputer installiert wurde:

  • Windows: Die Bibliothek nswl.lib, die sich im Verzeichnis nsbin auf dem Systemmanager-Hostcomputer befindet.
  • Solaris: Die Bibliothek libnswl.a befindet sich in /usr/local/netscaler/bin.

So erstellen Sie das benutzerdefinierte Protokollformat mit der NSWL-Bibliothek

  1. Fügen Sie die folgenden zwei vom System definierten C-Funktionen in einer C-Quelldatei hinzu:

    NS_UserDefieldName (): Diese Funktion gibt den String zurück, der als benutzerdefinierter Feldname im Protokolldatensatz hinzugefügt werden muss.

    NS_UserDefieldVal (): Diese Funktion implementiert den benutzerdefinierten Feldwert und gibt ihn dann als String zurück, der am Ende des Protokolldatensatzes hinzugefügt werden muss.

  2. Kompilieren Sie die Datei in eine Objektdatei.

  3. Verknüpfen Sie die Objektdatei mit der NSWL-Bibliothek (und optional mit Bibliotheken von Drittanbietern), um eine neue ausführbare NSWL-Datei zu bilden.

  4. Fügen Sie eine Zeichenfolge am Ende der LogFormat-Zeichenfolge in der Konfigurationsdatei (log.conf) hinzu.

Beispiel:

########## # A new file is created every midnight or on reaching 20MB file size, # and the file name is /datadisk5/netscaler/log/NS<hostname>/Nsmmddyy.log and create digital #signature field for each record. BEGIN CACHE_F logFormat custom "%a - "%{user-agent}i" [%d/%B/%Y %T -%g] "%x" %s %b%{referrer}i "%{user-agent}i" "%{cookie}i" %d " logInterval Daily logFileSizeLimit 20 logFilenameFormat /datadisk5/netscaler/log/%v/NS%`{`%m%d%y}t.log END CACHE_F

Manuelles Erstellen eines benutzerdefinierten Protokollformats

Um das Format anzupassen, in dem Protokolldateidaten angezeigt werden sollen, geben Sie eine Zeichenfolge als Argument der LogFormat-Log-Eigenschaftsdefinition an. Im Folgenden finden Sie ein Beispiel, in dem Zeichenfolgen verwendet werden, um ein Protokollformat zu erstellen:

LogFormat Custom ""%a - "%{user-agent}i" %[%d/%m/%Y]t %U %s %b %T"
  • Die Zeichenfolge kann die Steuerzeichen des Typs c n und t enthalten, um neue Zeilen und Tabs darzustellen.
  • Verwenden Sie die Esc-Taste mit literalen Anführungszeichen und umgekehrten Schrägstrichen.

Die Eigenschaften der Anforderung werden protokolliert, indem in% Direktiven in die Formatzeichenfolge platziert werden, die in der Protokolldatei durch die Werte ersetzt werden.

Wenn der Formatbezeichner %v (Hostname) oder %x (URL-Suffix) in einer Protokolldateinamenformatzeichenfolge vorhanden ist, werden die folgenden Zeichen im Dateinamen durch einen Unterstreichungsstrich im Namen der Protokollkonfigurationsdatei ersetzt:

” * . / : < > ? \

Zeichen, deren ASCII-Werte im Bereich von 0-31 liegen, werden wie folgt ersetzt:

%<ASCII value of character in hexadecimal>.

Beispielsweise wird das Zeichen mit dem ASCII-Wert 22 durch %16 ersetzt.

Vorsicht:

Wenn der Formatbezeichner%v in einer Protokolldateinamen-Formatzeichenfolge vorhanden ist, wird für jeden virtuellen Host eine separate Datei geöffnet. Um eine kontinuierliche Protokollierung sicherzustellen, sollte die maximale Anzahl von Dateien, die ein Prozess öffnen kann, ausreichend groß sein. Eine Vorgehensweise zum Ändern der Anzahl der Dateien, die geöffnet werden können, finden Sie in der Dokumentation des Betriebssystems.

Erstellen von Apache-Protokollformaten

Sie können aus den benutzerdefinierten Protokollen die meisten Protokollformate ableiten, die Apache derzeit unterstützt. Die benutzerdefinierten Protokollformate, die den Apache-Protokollformaten entsprechen, sind:

NCSA/combined: LogFormat custom %h %l %u [%t] “%r” %s %B “%{referer}i” “%{user-agent}i”

NCSA/Common: LogFormat custom %h %l %u [%t] “%r” %s %B

Referer Log: LogFormat custom “%{referer}i” -> %U

Useragent: LogFormat custom %{user-agent}i

Ebenso können Sie die anderen Serverprotokollformate aus den benutzerdefinierten Formaten ableiten.

Argumente zum Definieren eines benutzerdefinierten Protokollformats

Weitere Informationen zum Definieren eines benutzerdefinierten Protokollformats finden Sie in derBenutzerdefiniertes ProtokollformatPDF-Tabelle.

Hinweis:

Anweisungen zum Exportieren benutzerdefinierter HTTP-Header finden Sie unterKonfigurieren des Citrix ADC für die Webserver-Protokollierung

Wenn Sie beispielsweise das Protokollformat als %+{user-agent}i definieren und der Benutzeragent Wert Citrix ADC System Web Client ist, werden die Informationen als Citrix ADC System+Web+Client protokolliert. Eine Alternative besteht darin, doppelte Anführungszeichen zu verwenden. Beispiel: “%{user-agent}i” protokolliert es als “Citrix ADC System Web Client”. Verwenden Sie die <Esc> Taste nicht für Zeichenfolgen von %.. .r,%. .i und %. . .o. Dies entspricht den Anforderungen des Common Log Formats. Beachten Sie, dass Clients Steuerzeichen in das Protokoll einfügen können. Daher sollten Sie vorsichtig sein, wenn Sie mit rohen Protokolldateien arbeiten.

Zeitformatdefinition

In der Tabelle Zeitformatdefinition erfahren Sie mehr über den Formatteil der Zeichenfolgen% {format} t, der in der Tabelle Benutzerdefiniertes Protokollformat beschrieben wird. Werte in Klammern ([ ]) zeigen den angezeigten Wertebereich an. Beispielsweise wird [1,31] in der Beschreibung von %d in der folgenden Tabelle zeigt %d Bereiche von 1 bis 31.

Hinweis:

Wenn Sie eine Konvertierung angeben, die keiner der in der vorhergehenden Tabelle beschriebenen Konvertierungsspezifikationen entspricht, oder einer der im nächsten Absatz aufgeführten geänderten Konvertierungsspezifikationen entspricht, ist das Verhalten nicht definiert und gibt 0 zurück.

Der Unterschied zwischen%U und%W (und auch zwischen geänderten Konversionen%OU und%OW) ist der Tag, der als erster Tag der Woche angesehen wird. Woche Nummer 1 ist die erste Woche im Januar (beginnend mit einem Sonntag für%U oder einem Montag für%W). Woche 0 enthält die Tage vor dem ersten Sonntag oder Montag im Januar für%U und%W.

Serverprotokolle anzeigen

Sie können eine Citrix ADC Web Logging (NSWL) -Funktion konfigurieren, um Serverprotokolle auf der Konsole anzuzeigen oder Serverprotokolle in ein Verzeichnis auf der Citrix ADC-Appliance umzuleiten.

Es gibt zwei Möglichkeiten, Protokolle auf der Konsole anzuzeigen (Standardausgabe): Option 1: Alle Protokolle auf der Konsole anzeigen. Option 2: Zeigt nur ausgewählte Protokolle auf der Konsole an, wo Filter mit logfilenameformat als STDOUT.

Anpassen der Protokollierung auf dem NSWL-Clientsystem