The syslog-ng Premium Edition 4 LTS Administrator Guide

Table of Contents

Preface
1. Summary of contents
2. Target audience and prerequisites
3. Products covered in this guide
4. Typographical conventions
5. Contact and support information
5.1. Sales contact
5.2. Support contact
5.3. Training
6. About this document
6.1. Summary of changes
6.2. Feedback
6.3. Acknowledgments
1. Introduction to syslog-ng
1.1. What syslog-ng is
1.2. What syslog-ng is not
1.3. Why is syslog-ng needed?
1.4. What is new in syslog-ng Premium Edition 4 LTS?
1.5. Who uses syslog-ng?
1.6. Supported platforms
1.6.1. Certified packages
2. The concepts of syslog-ng
2.1. The philosophy of syslog-ng
2.2. Logging with syslog-ng
2.2.1. The route of a log message in syslog-ng
2.3. Modes of operation
2.3.1. Client mode
2.3.2. Relay mode
2.3.3. Server mode
2.4. Global objects
2.5. Timezones and daylight saving
2.5.1. A note on timezones and timestamps
2.6. Versions and releases of syslog-ng PE
2.7. Licensing
2.8. High availability support
2.9. The structure of a log message
2.9.1. BSD-syslog or legacy-syslog messages
2.9.2. IETF-syslog messages
2.9.3. Message representation in syslog-ng PE
3. Installing syslog-ng
3.1. Installing syslog-ng using the .run installer
3.1.1. Installing syslog-ng in client or relay mode
3.1.2. Installing syslog-ng in server mode
3.1.3. Installing syslog-ng without user-interaction
3.2. Installing syslog-ng on RPM-based platforms (Red Hat, SUSE, AIX)
3.3. Installing syslog-ng on Debian-based platforms
3.4. Enabling SELinux support
3.5. Upgrading syslog-ng PE
3.5.1. Upgrading syslog-ng PE to other package versions
3.5.2. Uprading from previous syslog-ng PE versions
3.5.3. Upgrading from previous syslog-ng OSE versions
3.5.4. Upgrading from syslog-ng PE to syslog-ng OSE
3.5.5. Upgrading from complete syslog-ng PE to client setup version of syslog-ng PE
3.6. Uninstalling syslog-ng PE
3.7. Configuring Microsoft SQL Server to accept logs from syslog-ng
4. The syslog-ng PE quick-start guide
4.1. Configuring syslog-ng on client hosts
4.2. Configuring syslog-ng on server hosts
4.3. Configuring syslog-ng relays
4.3.1. Configuring syslog-ng on relay hosts
4.3.2. How relaying log messages works
5. The syslog-ng PE configuration file
5.1. The syslog-ng configuration file
5.1.1. The configuration syntax in detail
5.1.2. Notes about the configuration syntax
5.2. Logging configuration changes
5.3. Managing large syslog-ng configurations
5.3.1. Including configuration files
6. Collecting log messages — sources and source drivers
6.1. How sources work
6.2. Collecting internal messages
6.3. Collecting messages from text files
6.3.1. File sources and the RFC5424 message format
6.3.2. file() source options
6.4. Collecting messages from named pipes
6.4.1. pipe() source options
6.5. Receiving messages from external applications
6.5.1. program() source options
6.6. Collecting messages on Sun Solaris
6.6.1. sun-streams() source options
6.7. Collecting messages using the IETF syslog protocol
6.7.1. syslog() source options
6.8. Collecting the system-specific log messages of a platform
6.9. Collecting messages from remote hosts using the BSD syslog protocol
6.9.1. tcp(), tcp6(), udp() and udp6() source options
6.10. Collecting messages from UNIX domain sockets
6.10.1. unix-stream() and unix-dgram() source options
7. Sending and storing log messages — destinations and destination drivers
7.1. Storing messages in plain-text files
7.1.1. file() destination options
7.2. Storing messages in encrypted files
7.2.1. Displaying the contents of logstore files
7.2.2. Journal files
7.2.3. logstore() destination options
7.3. Sending messages to named pipes
7.3.1. pipe() destination options
7.4. Sending messages to external applications
7.4.1. program() destination options
7.5. Storing messages in an SQL database
7.5.1. Using the sql() driver with an Oracle database
7.5.2. Using the sql() driver with a Microsoft SQL database
7.5.3. The way syslog-ng interacts with the database
7.5.4. sql() destination options
7.6. Sending messages to a remote logserver using the IETF-syslog protocol
7.6.1. syslog() destination options
7.7. Sending messages to a remote logserver using the legacy BSD-syslog protocol
7.7.1. tcp(), tcp6(), udp(), and udp6() destination options
7.8. Sending messages to UNIX domain sockets
7.8.1. unix-stream() and unix-dgram() destination options
7.9. Sending messages to a user terminal — usertty() destination
8. Routing messages: log paths, reliability, and filters
8.1. Log paths
8.1.1. Embedded log statements
8.1.2. Log path flags
8.2. Managing incoming and outgoing messages with flow-control
8.2.1. Flow-control and multiple destinations
8.2.2. Configuring flow-control
8.3. Using disk-based buffering
8.3.1. Enabling disk-based buffering
8.4. Client-side failover
8.5. Filters
8.5.1. Using filters
8.5.2. Combining filters with boolean operators
8.5.3. Using wildcards, special characters, and regular expressions in filters
8.5.4. Tagging messages
8.5.5. Filter functions
8.6. Dropping messages
9. Global options of syslog-ng PE
9.1. Configuring global syslog-ng options
9.2. Global options
10. TLS-encrypted message tranfer
10.1. Secure logging using TLS
10.2. Encrypting log messages with TLS
10.2.1. Configuring TLS on the syslog-ng clients
10.2.2. Configuring TLS on the syslog-ng server
10.3. Mutual authentication using TLS
10.3.1. Configuring TLS on the syslog-ng clients
10.3.2. Configuring TLS on the syslog-ng server
10.4. TLS options
11. Manipulating messages
11.1. Customizing message format
11.1.1. Formatting messages, filenames, directories, and tablenames
11.1.2. Templates and macros
11.1.3. Hard vs. soft macros
11.1.4. Macros of syslog-ng PE
11.2. Modifying messages
11.3. Regular expressions
11.3.1. Types and options of regular expressions
11.3.2. Optimizing regular expressions
12. Parsing and segmenting structured messages
12.1. Parsing messages
12.2. Options of CSV parsers
13. Processing message content with a pattern database
13.1. Classifying log messages
13.1.1. The structure of the pattern database
13.1.2. How pattern matching works
13.1.3. Artificial ignorance
13.2. Using pattern databases
13.2.1. Using parser results in filters and templates
13.2.2. Downloading sample pattern databases
13.3. Creating pattern databases
13.3.1. Using pattern parsers
13.3.2. The syslog-ng pattern database format
14. Statistics of syslog-ng
15. Troubleshooting syslog-ng
15.1. Possible causes of losing log messages
15.2. Creating syslog-ng core files
15.3. Collecting debugging information with strace, truss, or tusc
15.4. Running a failure script
15.5. Stopping syslog-ng
16. Best practices and examples
16.1. General recommendations
16.2. Handling lots of parallel connections
16.3. Handling large message load
16.4. Using name resolution in syslog-ng
16.4.1. Resolving hostnames locally
16.5. Collecting logs from chroot
Appendix 1. The syslog-ng manual pages
dqtool — Display the contents of a disk-buffer file created with syslog-ng Premium Edition
loggen — Generate syslog messages at a specified rate
lgstool — Inspect and validate the binary log files (logstores) created with syslog-ng Premium Edition
pdbtool — An application to test and convert syslog-ng pattern database rules
syslog-ng — syslog-ng system logger application
syslog-ng.conf — syslog-ng configuration file
syslog-ng-ctl — Display message statistics and enable verbose, debug and trace modes in syslog-ng Premium Edition
Appendix 2. BalaBit syslog-ng Premium Edition License contract
2.1. SUBJECT OF THE LICENSE CONTRACT
2.2. DEFINITIONS
2.3. WORDS AND EXPRESSIONS
2.4. LICENSE GRANTS AND RESTRICTIONS
2.5. SUBSIDIARIES
2.6. INTELLECTUAL PROPERTY RIGHTS
2.7. TRADE MARKS
2.8. NEGLIGENT INFRINGEMENT
2.9. INTELLECTUAL PROPERTY INDEMNIFICATION
2.10. LICENSE FEE
2.11. WARRANTIES
2.12. DISCLAIMER OF WARRANTIES
2.13. LIMITATION OF LIABILITY
2.14. DURATION AND TERMINATION
2.15. AMENDMENTS
2.16. WAIVER
2.17. SEVERABILITY
2.18. NOTICES
2.19. MISCELLANEOUS
Appendix 3. GNU Lesser General Public License
3.1. Preamble
3.2. TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
3.2.1. Section 0
3.2.2. Section 1
3.2.3. Section 2
3.2.4. Section 3
3.2.5. Section 4
3.2.6. Section 5
3.2.7. Section 6
3.2.8. Section 7
3.2.9. Section 8
3.2.10. Section 9
3.2.11. Section 10
3.2.12. Section 11
3.2.13. Section 12
3.2.14. Section 13
3.2.15. Section 14
3.2.16. NO WARRANTY Section 15
3.2.17. Section 16
3.3. How to Apply These Terms to Your New Libraries
Appendix 4. GNU General Public License
4.1. Preamble
4.2. TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
4.2.1. Section 0
4.2.2. Section 1
4.2.3. Section 2
4.2.4. Section 3
4.2.5. Section 4
4.2.6. Section 5
4.2.7. Section 6
4.2.8. Section 7
4.2.9. Section 8
4.2.10. Section 9
4.2.11. Section 10
4.2.12. NO WARRANTY Section 11
4.2.13. Section 12
4.3. How to Apply These Terms to Your New Programs
Appendix 5. Creative Commons Attribution Non-commercial No Derivatives (by-nc-nd) License
Glossary
List of syslog-ng PE parameters
Index
List of Examples
List of Procedures

© 2007-2012 BalaBit IT Security
Please send your comments or documentation bugs to: documentation@balabit.com