About logging in Wowza Streaming Engine

Learn about the Apache Log4j 2 logging implementation in Wowza Streaming Engine™ media server software.

Note:  Apache Log4j 2 logging is available in Wowza Streaming Engine 4.8.8.01 and later. Earlier versions of Wowza Streaming Engine use Apache Log4J 1.x.

About Wowza Streaming Engine Logging


Wowza Streaming Engine uses the Apache Log4j 2 utility for logging. The Log4j 2 logging system provides ample functionality for log formatting, log rolling, and log retrieval for most applications. By default, Wowza Streaming Engine is configured to log basic information to the server console and detailed information in the W3C Extended Common Log Format (ECLF) to a log file. Java messaging is also captured in the log files to help monitor and aid troubleshooting.

The log files for Wowza Streaming Engine are written to the [install-dir]/logs folder, and the log files for Wowza Streaming Engine Manager are written to the [install-dir]/manager/logs folder. You can edit the default logging configuration in the [install-dir]/conf/log4j2-config.xml file.

Note: If you upgraded from Wowza Streaming Engine 4.8.5 or earlier and are developing custom logging, update the run configuration for Eclipse or IntelliJ to point to the logging configuration XML file:
-Dlog4j.configurationFile="$WMSCONFIG_HOME/conf/log4j2-config.xml"

Logging fields


Wowza Streaming Engine can generate the following logging fields using Log4j 2:

Field name Description
c-client-id Client ID number assigned by the server to the connection
c-ip Client connection IP address
c-proto Client connection protocol: http, rtmp, rtmpe, rtmps (HTTP-1.1), rtmpt (HTTP-1.1), rtmpte (HTTP-1.1)
c-referrer URL of the video that initiated the connection to the server
c-user-agent Version of the client that initiated the connection to the server
cs-bytes Total number of bytes transferred from client to server (cumulative)
cs-stream-bytes Total number of bytes transferred from client to server for stream x-stream-id (cumulative)
cs-uri-query Query parameter for stream x-stream-id
cs-uri-stem Full connection string for stream x-stream-id (excludes query parameters)
date Date of log event
s-ip IP address of the server that received this event
s-port Port number through which the server received this event
s-uri Full connection string on which the server received this event
sc-bytes Total number of bytes transferred from server to client (cumulative)
sc-stream-bytes Total number of bytes transferred from server to client for stream x-stream-id (cumulative)
time Time of log event
tz Time zone of log event
x-app Name of the application from which the event was generated
x-app-context Field used for per-application logging
x-appinst Name of the application instance from which the event was generated
x-appinst-context Field used for per-application instance logging
x-category Log event category (server, vhost, application, session, stream)
x-class-fqcn Fully qualified class name passed in when the logger is fetched
x-class-name Class name of class passed in when the logger is fetched
x-class-packagename The package name of the Java class that's generating the log item, which can be used to filter per-package
x-comment Extra comment about the log event
x-ctx Extra data about the context of the log event
x-duration Time, in seconds, that this event occurred within the lifetime of the x-category object
x-event Log event (see Logging events)
x-file-ext File extension of stream x-stream-id
x-file-length File length, in seconds, of stream x-stream-id
x-file-name Full file path of stream x-stream-id
x-file-size File size, in bytes, of stream x-stream-id
x-forwarded-ip The HTTP header value for httpForwardedProxyList
x-severity Log event severity (DEBUG, INFO, WARN, ERROR, FATAL)
x-sname Name of stream x-stream-id
x-sname-query Query parameters of stream x-stream-id
x-spos Position, in milliseconds, within the media stream
x-status Log event status (see Logging status values)
x-stream-id Stream ID number assigned by the server to the stream object
x-suri Full connection string for stream x-stream-id (includes query parameters)
x-suri-query Query parameter for connection string
x-suri-stem Full connection string for stream x-stream-id (excludes query parameters)
x-vhost Name of the virtual host from which the event was generated
x-vhost-context Field used for per-virtual host logging

Logging events


Wowza Streaming Engine can generate the following logging events using Log4J 2:

Event name Description
announce RTSP Session Description Protocol (SDP) ANNOUNCE
app-start Application instance start
app-stop Application instance shutdown
comment Comment
connect Connection result
connect-burst Connection accepted in burst zone
connect-pending Connection pending approval by application and license manager
create Media or data stream created
decoder-audio-start Audio decoding has started for a transcoded stream
decoder-audio-stop Audio decoding has stopped for a transcoded stream
decoder-video-start Video decoding has started for a transcoded stream
decoder-video-stop Video decoding has stopped for a transcoded stream
destroy Media or data stream destroyed
disconnect Client (session) disconnected from server
encoder-audio-start Audio encoding has started for a transcoded stream
encoder-audio-stop Audio encoding has stopped for a transcoded stream
encoder-video-start Video encoding has started for a transcoded stream
encoder-video-stop Video encoding has stopped for a transcoded stream
pause Playback has paused
play Playback has started
publish Start stream publishing
record Start stream recording
recordstop Stop stream recording
seek Seek has occurred
setbuffertime Client call to NetStream.setBufferTime(secs) logged in milliseconds
setstreamtype Client call to netConnection.call("setStreamType", null, "[streamtype]")
server-start Server start
server-stop Server shutdown
stop Playback has stopped
unpause Playback has resumed from pause
unpublish Stop stream publishing
vhost-start Virtual host start
vhost-stop Virtual host shutdown

Logging status values


Wowza Streaming Engine can generate the following logging status values using Log4J 2:

Status value Description
100 Pending or waiting (for approval)
200 Success
302 Rejected by application with redirect information
400 Bad request
401 Rejected by application
413 Rejected by license manager
500 Internal error

More resources