{ title: 'Log Files', crumbs: [ { "User's Guide": '../users/' }, ], }

# Log Files

GoAhead provides detailed logging regarding client accesses and the operation of GoAhead. The log records the essential GoAhead configuration, details of denied requests, and other trace and error information. The log can also record request and response headers and other request details.

## Sample Output

Here is some sample log output.

    goahead: 2: Configuration for Embedthis GoAhead
    goahead: 2: ---------------------------------------------
    goahead: 2: Version:            3.0.0-0
    goahead: 2: BuildType:          Debug
    goahead: 2: CPU:                x64
    goahead: 2: OS:                 macosx
    goahead: 2: Host:               10.0.0.102
    goahead: 2: Directory:          /Users/mob/git/goahead
    goahead: 2: Configure:          me configure
    goahead: 2: ---------------------------------------------
    goahead: 2: Started http://*:80
    goahead: 2: Started https://*:443

Each line in the error log is prefixed with source information. This follows the format:

    program:logLevel

The log level is the verbosity level assigned to the trace information by GoAhead.

## Log Files

The default location of the log file is specified at build time via the command:

    ./configure --set trace="file:level"

The log filename can be set to "stdout" or "stderr". The debug level specifies the desired trace verbosity. Level 0 is the least verbose and level 9 is the most verbose.

Configure will defines a ME_TRACE definition in the me.h configuration header that is used to set the default log location. After building, the trace can be redirected via a goahead command line option.

### Command Line Log Option

You may specify the error log file and log level via the GoAhead command line --log option. If you invoke GoAhead with a --log file:level. command line option, it will override the build time defaults.