Hat Syslog
Project description
About
hat-syslog provides server/client tooling based on Syslog logging protocol as defined by RFC 5425, RFC 5426 and RFC 6587.
This project includes implementations of:
-
Central concentrator for syslog messages with web interface for real time monitoring and filtering of log messages.
-
Implementation of Python’s standard library logging.Handler based on dedicated background logging thread.
-
Simple testing tool responsible for generating syslog messages.
For more information see:
Runtime requirements
python >=3.10
Install
Debian
WIP
Archlinux
hat-syslog is available as AUR package:
$ yay -S hat-syslog
Windows
Windows distribution, with embedded python, is available at GitHub releases.
Python wheel
hat-syslog is available as PyPI project:
$ pip install hat-syslog
Docker
Syslog Server is available as Docker image:
$ mkdir -p ~/.local/share/hat $ docker run -p 6514:6514/tcp \ -p 6514:6514/udp \ -p 23020:23020 \ -v $(cd; pwd)/.local/share/hat:/hat-syslog \ bozokopic/hat-syslog
Usage
Syslog Server
Command hat-syslog-server is used for running new Syslog Server instance:
$ hat-syslog-server
Once server is running, web UI is available at http://127.0.0.1:23020.
For additional details and command line options see Syslog Server.
Syslog Handler
Example python logging configuration:
import logging.config
logging.config.dictConfig({
'version': 1,
'formatters': {
'default': {}},
'handlers': {
'syslog': {
'class': 'hat.syslog.handler.SyslogHandler',
'host': '127.0.0.1',
'port': 6514,
'comm_type': 'TCP',
'level': 'DEBUG',
'formatter': 'default'}},
'root': {
'level': 'INFO',
'handlers': ['syslog']},
'disable_existing_loggers': False})
logger = logging.getLogger(__name__)
logger.info('spam')
For additional details see Syslog Handler.
Syslog Generator
Command hat-syslog-generator is used for running Syslog Generator:
$ hat-syslog-generator
For additional details and command line options see Syslog Generator.
Development requirements
python >=3.10
nodejs >=7
yarn
Build
To install editable installation, together with python development dependencies, run:
$ pip install -e '.[dev]'
To install only python development dependencies, run:
$ pip install -r requirements.pip.txt
Build tool used for hat-syslog is pydoit. For listing available doit tasks, use:
$ doit list
Default task:
$ doit
creates wheel package inside build directory.
Hat Open
hat-syslog is part of Hat Open project - open-source framework of tools and libraries for developing applications used for remote monitoring, control and management of intelligent electronic devices such as IoT devices, PLCs, industrial automation or home automation systems.
Development of Hat Open and associated repositories is sponsored by Končar Digital.
License
Copyright 2020-2023 Hat Open AUTHORS
Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for hat_syslog-0.7.9-cp310.cp311-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 030463601abef6f626b14180bbc6e418f375f268e6435c0c8bc912af3c15d765 |
|
MD5 | d31b883539e41f1d62bc2acbd2e14fc9 |
|
BLAKE2b-256 | c83eb502f28ddbaa12b3647d4b2b5c3ce105650dab7b8de64230df3a14493a7b |