Skip to main content
develop master

GELF (Graylog Extended Log Format) for Zope event logs

Contents

Main features

  1. Sends Zope event logs to Graylog instead of a file.

Install

Plone 5.2+ (WSGI)

  • Add eea.graylogger to your eggs section in your buildout and re-run buildout

    [instance]
    eggs +=
        eea.graylogger
    
    event-log-handler = eea.graylogger.GELFHandler
    event-log-args = ('logs.example.com', 12201)
    event-log-kwargs = {'level_names': True, 'facility': 'example.com'}
    
    access-log-handler = eea.graylogger.GELFHandler
    access-log-args = ('logs.example.com', 12201)
    access-log-kwargs = {'facility': 'example.com'}

See graypy documentation for more details.

Alternatively, you can skip -log-args and -log-kwargs and use environment variables to define Graylog host:port and facility:

[instance]
eggs +=
    eea.graylogger

event-log-handler = eea.graylogger.GELFHandler
access-log-handler = eea.graylogger.GELFHandler
  • GRAYLOG - Graylog host, or host:port (e.g.: GRAYLOG=logs.example.com:12201)

  • GRAYLOG_FACILITY - Graylog facility (e.g.: GRAYLOG_FACILITY=example.com)

Plone < 5.2 (non-WSGI)

Getting started

  1. Install Graylog server or use Graylog2 Docker image

  2. Restart Zope

  3. Go to http://localhost:9000 to see your Zope logs

Configuration parameters

  • rabbit - True if you want to use GELFRabbitHandler instead of GELFHandler. See graypy documentation for more details.

GELFHandler

  • server - the host[:port] of the graylog server.

  • debugging_fields - send debug fields if true (the default).

  • extra_fields - send extra fields on the log record to graylog if true (the default).

  • fqdn - use fully qualified domain name of localhost as source host (socket.getfqdn()).

  • localname - use specified hostname as source host.

  • facility - replace facility with specified value. if specified, record.name will be passed as logger parameter.

GELFRabbitHandler

  • server - RabbitMQ URL (ex: amqp://guest:guest@localhost:5672/%2F).

  • exchange - RabbitMQ exchange. Default logging.gelf. A queue binding must be defined on the server to prevent log messages from being dropped.

  • debugging_fields - send debug fields if true (the default).

  • extra_fields - send extra fields on the log record to graylog if true (the default).

  • fqdn - use fully qualified domain name of localhost as source host - socket.getfqdn().

  • exchange_type - RabbitMQ exchange type (default fanout).

  • localname - use specified hostname as source host.

  • facility - replace facility with specified value. if specified, record.name will be passed as logger parameter.

Dependencies

  1. Graylog server

  2. graypy >= 2.1.0

  3. plone.recipe.zope2instance >= 6.5.0

Source code

Funding

EEA - European Environment Agency (EU)

Changelog

2.4 - (2023-06-12)

  • Bug fix: Fix tests [iulianpetchesi refs #249331]

2.3 - (2023-03-31)

  • Change: Remove graypy pin [iulianpetchesi refs #249331]

2.2 - (2023-03-31)

  • Change: Change setup.py version pinnings [iulianpetchesi refs #249331]

2.1 - (2023-03-31)

  • Change: Bypass Plone 6 error when using eea.graylogger [iulianpetchesi refs #249331]

2.0 - (2019-11-25)

  • Feature: Python3 / Plone 5.2 / WSGI support [avoinea refs #110157]

  • Change: Upgrade to graypy 2.1.0 [avoinea refs #110157]

  • Change: Remove chunk_size option [avoinea refs #110157]

1.9 - (2019-04-02)

  • Bug fix: Fix Readme unicode/decode error [avoinea]

1.8 - (2019-04-02)

  • Bug fix: Pin graypy version [valipod]

1.7 - (2019-01-28)

  • Jenkins: Add sonarqube step [avoinea refs #101552]

  • Change: updated URLs pointing to eea.europa.eu with https:// [alecghica refs #95849]

1.6 - (2017-12-12)

  • Change: Replace eeacms/zptlint with eeacms/plone-test:4 zptlint [avoinea refs #90415]

1.5 - (2017-06-15)

  • Bug fix: Fix to work with graypy 0.2.14+ (facility override) [avoinea refs #85963]

1.4 - (2017-05-15)

  • Change: fixed PyLint warnings and errors [eduard-fironda refs #84949]

1.3 - (2017-04-24)

  • Change: updated package information [eduard-fironda]

1.2 - (2015-10-05)

  • Bug fix: Instance name param added to graylog’s log entry [lucas, refs #28304]

1.1 - (2015-07-06)

  • Bug fix: Added hard dependency to amqplib in order to fix GELFRabbitHandler [voineali refs #21610]

1.0 - (2015-05-05)

  • Initial release [voineali]

Release files for eea.graylogger 2.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for eea.graylogger 2.4
File Size Uploaded
eea.graylogger-2.4.zip 26.4 kB Details

Release files / eea.graylogger-2.4.zip

Download URL eea.graylogger-2.4.zip
Size 26.4 kB
Tags Source
SHA-256 checksum
How to use checksums
b309c42506242344229428f30e676639e0f929976fe24381e87da812925f825f
BLAKE2b-256 checksum
How to use checksums
ba3e4bf6e6af064cee33b4a4b3ac8c4dfb357e468636a7168afb8bb739a6da48
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.0

Release history Release notifications | RSS feed

This release

2.4 This release

1 release file

2.3

1 release file

2.2

1 release file

2.1

1 release file

2.0

1 release file

1.9

1 release file

1.7

1 release file

1.6

1 release file

1.5

1 release file

1.4

1 release file

1.3

1 release file

1.2

1 release file

1.1

1 release file

1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page