Cloud Platform

Drupal watchdog logs

The Drupal watchdog log (drupal-watchdog.log) records Drupal-related actions on your application. The watchdog log is recorded on your infrastructure if you have enabled the syslog module.

For a list of the log files handled by Cloud Platform, including accessing these log files, log file retention, and their locations, see About Cloud Platform logging. You can also review information about how to stream Drupal watchdog log entries in real time from your browser.

Important

  • You should avoid setting or overriding Syslog identity in settings.php as an override will cause the drupal-watchdog.log to only log output for the default website and not for the additional multisites. The Cloud Platform interface will write to drupal-watchdog.log for all of your websites in a multisite architecture if you do not set or override Syslog identity.

  • After March 2019, website requests are no longer logged to a single drupal-watchdog.log, and are instead aggregated on the infrastructure handling the request.

  • The maximum character limit in the drupal-watchdog.log file is 15384. If your file crosses this limit, the system truncates the file.

Note for log forwarding users

Acquia’s log forwarding feature prepends information to the beginning of each line forwarded to an external service. For more information, see File formats in forwarded log files.

Parsing the log file

The following line is a representative example of the data written into your website’s Drupal watchdog log:

Aug 18 21:22:01 10.0.0.1 alphabeta: https://www.example.com|1503091321|
custom_module|151.0.0.1|https://example.com/documents||0||Warning: Invalid
argument supplied for foreach() in views_join->build_join
request_id="v-00000000-845b-0000-8178-22000ab832c9"

Each of the items in the Drupal watchdog is noted in the following table, along with its description:

Position

Data

Description

0

Aug 18 21:22:01

The date and time of the request

1

10.0.0.1

The internal hostname of the infrastructure handling this request. If no hostname exists, the internal IP address will be displayed.

2

alphabeta

The internal Acquia website name this request is for

3

http://www.example.com

The domain this request was for

4

1503091321

The Unix timestamp of the request

5

custom_module

The name of the module issuing this message

6

151.0.0.1

The originating IP address of this request

7

https://example.com/documents

The full URL of the requested page.

8

(blank)

The referrer for this request (the example line is blank for this value)

9

0

The Drupal user ID initiating the request. 0 means an anonymous user

10

(blank)

A relevant link, if one was passed to the logging function

11

Warning: Invalid argument supplied for foreach() in views_join->build_join

Message

12

request_id="v-00000000-845b-0000-8178-22000ab832c9"

A unique ID attached to this request by the load balancer, which appears in several Cloud Platform log files. For more information, see Using HTTP request IDs

If you want to search for a website in drupal-watchdog.log, you can use any of the following commands, which allow you to search log entries for a specific domain name:

  • grep: Allows you to search uncompressed log files

  • zgrep: Allows you to search compressed log files ending in .tar.gz

In Drupal 7, drush vget syslog_format displays information about the ordering and content of fields in the watchdog logs. API documentation about Drupal’s watchdog log is available for Drupal 7.