Working with Greenplum Chorus Log Files

Log levels
Depending on the log level set in chorus.properties, the volume of the log files can vary drastically. Supported log levels are:
• debug
• info
• warn
• error
• fatal

production.log
The rails production.log file is stored in: <chorus-root>/shared/log/production.log
This log contains information on requests sent to the Chorus webserver and various debugging information. For example: server errors, file not found, permission denied, and others.

worker.production.log
The rails worker.production.log file is stored in: <chorus-root>/shared/log/worker.production.log
It contains logs for the background worker threads that Chorus uses to perform various asynchronous tasks like database imports, checking instance statuses, etc.

scheduler.production.log
The rails scheduler.production.log file is stored in: <chorus-root>/shared/log/scheduler.production.log
It contains information about jobs that the scheduler issues to different background workers. This will mainly show that a task was scheduled. See the worker.production.log for more detailed information about what happened during execution of a task.

solr-production.log
The rails solr-production.log file is stored in: <chorus-root>/shared/log/solr-production.log
It contains information about solr search queries issued against Chorus. 

nginx
nginx maintains access.log and error.log files in <chorus-root>/shared/log/nginx

syslog
As an alternative to the log files listed above, all logs can be combined in one file by using syslog as the logger.
To turn on syslog as the logger, put logging.syslog = true in <chorus>/shared/chorus.properties.

Logrotate
You can use the Linux command logrotate to rotate your log files and prevent accumulation. By running logrotate your_logrotate.conf from a cron job, you
can make sure the logs get rotated at preset intervals.

Here is an example of a your_logrotate.conf configuration file that rotates all the important Chorus log files:
daily
rotate 4
copytruncate
size 10M
<chorus>/shared/log/production.log {
}
<chorus>/shared/log/nginx/access.log {
}
<chorus>/shared/log/nginx/error.log {
}
<chorus>/shared/log/solr-production.log {
}
<chorus>/shared/log/worker.production.log {
}
<chorus>/shared/log/scheduler.production.log {
}
See the logrotate manual page for more details on the features of logrotate: http://linuxcommand.org/man_pages/logrotate8.html.
Note: If you use syslog, you don't need to rotate your logs manually—syslog rotates the log files for you.


Comments