Consider adding logging.handlers.LocalSysLogHandler

Open
#96,339 9 comments 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
25/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale
Tech stack
python
Domain
tooling

Research direction

Start with the logging package and the proposed use of syslog.syslog, then review linked PR gh-154548. Resolve the global configuration and priority-mapping questions, and define the LocalSysLogHandler behavior so local macOS system logging works without ambiguity.

Written by the indexing model from the issue text.

Description

stdlib type-feature

Feature or enhancement

Add a handler to the logging package that uses syslog.syslog to log

Pitch

As mentioned in #91070 the logging.handlers.SysLogHandler cannot log to the local system log on recent versions of macOS. It is possible to log using syslog.syslog, I've checked that the code below results in a message in the system log:

syslog.syslog(syslog.LOG_WARNING|syslog.LOG_LOCAL7, "message from python")

Because of this it might be useful to define a LocalSysLogHander class that logs locally using the syslog module.

There is a design challenge here though: The syslog module (and libc function) has proces global configuration. This in particular affects the "ident" field which can only be set as proces global configuration. Another challenge is the interaction between the logging package handling of priorities and handling of those in syslog(3).

Linked PRs
  • gh-154548
Dominant language
Python
Stars
77.2k
Forks
36k
Avg merge
1d 9h
Merged PRs (30d)
558

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from python/cpython

All issues in python/cpython

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.