Skip to main content

Python library to easily send CEF formatted messages to syslog server

Project description

syslogcef

Python library to easily send CEF formatted messages to syslog server.

It uses cefevent to format message payloads and offer two strategies to send syslogs over the network: RFC 5424 or RFC 3164. RFC 5424 is the default.

Install:

pip install syslogcef

Test sending a few messages with:

python3 -m syslogcef.testmessages --host <host> --port <port> --proto [TCP|UDP]

Usage:

from syslogcef import SyslogCEFSender, Rfc3164SyslogSender

# Create syslog sender.
syslog = SyslogCEFSender(
    # Syslog server settings:
    host='10.1.2.3', 
    port='514', 
    protocol='TCP', 
    # Hopefully the above names does not clash with any CEF field name.
    # CEF fields applied to all events:
    deviceProduct='MyProgram', 
    deviceVendor='MyCompany',
    deviceVersion='1.0.2',
    # Overriding the default strategy to send syslog over the network with RFC 3164 format.
    # Do not specify this argument to use RFC 5424.
    syslog_sender_class=Rfc3164SyslogSender)

# Register CEF events.
syslog.register_event('100', name='CPU temp is OK', severity=0)
syslog.register_event('101', name='CPU temp is rising', severity=5)
syslog.register_event('102', name='CPU temp is too high', severity=9, 
    # CEF fields applied to all '102' events:
    reason="Exceeds 70 degres celsius")

# Send one syslog message.
syslog.send('102', message="The CPU temp is 88 degres celsius.", 
    # CEF fields applied only to this event:
    sourceHostName="mydevice.mydomain.com", 
    sourceMacAddress="00:00:ee:00:52:bb")

See cefevent for complete list of fields.

Read the full ArcSight CEF format for more informations.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

syslogcef-0.1.8.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

syslogcef-0.1.8-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

Details for the file syslogcef-0.1.8.tar.gz.

File metadata

  • Download URL: syslogcef-0.1.8.tar.gz
  • Upload date:
  • Size: 5.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for syslogcef-0.1.8.tar.gz
Algorithm Hash digest
SHA256 01d62ea155e491c82e3acd8e761af63a4462b6f8a11e07a56314820ecc7883b7
MD5 c4202a0e1b3c5863a15408098b48fa25
BLAKE2b-256 c2b2279bfba73e4f0161ae9a886fe3318c7678f914aee2292a35bb4a6bc885c4

See more details on using hashes here.

File details

Details for the file syslogcef-0.1.8-py3-none-any.whl.

File metadata

  • Download URL: syslogcef-0.1.8-py3-none-any.whl
  • Upload date:
  • Size: 6.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for syslogcef-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 d3a0986aadecd4aef56fefe8947ebd8f5d0253648f221417dce1e385c482e32b
MD5 fea305db9ac0a638be2adbb387eca90d
BLAKE2b-256 81f75b8852b4121bde521bb8e4d5e8d3b7b966b8ccd7a049022165a9005b692b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page