Consider adding logging.handlers.LocalSysLogHandler

Ouverte
#96,339 9 commentaires 3 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
5/5
Temps estimé
Plus d'une semaine
Accessibilité débutants
25/100
Type d'issue
Fonctionnalité
Clarté
Plutôt claire
Activité
À l'abandon
Stack technique
python
Domaine
tooling

Piste de recherche

Commencez par le package de journalisation et l’utilisation proposée de syslog.syslog, puis examinez la PR liée gh-154548. Résolvez les questions relatives à la configuration globale et au mappage des priorités, et définissez le comportement de LocalSysLogHandler afin que la journalisation système locale de macOS fonctionne sans ambiguïté.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

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
Langage dominant
Python
Étoiles
77.2k
Forks
36k
Merge moyen
1 j 9 h
PR mergées (30 j)
558

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de python/cpython

Toutes les issues de python/cpython

Issues similaires

Plus d'issues Python

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.