{"action":"created","issue":{"url":"https://api.github.com/repos/ochinchina/supervisord/issues/91","repository_url":"https://api.github.com/repos/ochinchina/supervisord","labels_url":"https://api.github.com/repos/ochinchina/supervisord/issues/91/labels{/name}","comments_url":"https://api.github.com/repos/ochinchina/supervisord/issues/91/comments","events_url":"https://api.github.com/repos/ochinchina/supervisord/issues/91/events","html_url":"https://github.com/ochinchina/supervisord/issues/91","id":324552690,"number":91,"title":"Feature: Extend SyslogLogger to support remote syslog daemons","user":{"login":"Aisbergg","id":14318942,"avatar_url":"https://avatars1.githubusercontent.com/u/14318942?v=4","gravatar_id":"","url":"https://api.github.com/users/Aisbergg","html_url":"https://github.com/Aisbergg","followers_url":"https://api.github.com/users/Aisbergg/followers","following_url":"https://api.github.com/users/Aisbergg/following{/other_user}","gists_url":"https://api.github.com/users/Aisbergg/gists{/gist_id}","starred_url":"https://api.github.com/users/Aisbergg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Aisbergg/subscriptions","organizations_url":"https://api.github.com/users/Aisbergg/orgs","repos_url":"https://api.github.com/users/Aisbergg/repos","events_url":"https://api.github.com/users/Aisbergg/events{/privacy}","received_events_url":"https://api.github.com/users/Aisbergg/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-05-18T21:08:29Z","updated_at":"2018-05-28T01:46:01Z","closed_at":null,"author_association":"NONE","body":"A nice thing would be, if the logs could be send directly to a remote syslog server over UDP or TCP. This functionality is already implmented in the GO syslog package and could easily be implemented in supervisord.\r\n\r\n**Proposal:**\r\nThe configuration file could be extended to supply protocol, host and port for the remote syslog server. Using the syntax of rsyslog the `X_logfile` variables could be adjusted like this:\r\n```bash\r\n# local syslog daemon\r\nstdout_logfile=syslog\r\n# remote syslog daemon over UDP\r\nstdout_logfile=syslog @host:1234\r\n# remote syslog daemon over TCP\r\nstdout_logfile=syslog @@host:1234\r\n```\r\nAnd when a remote connection shall be opened the method [`syslog.Dial(...)`](https://golang.org/pkg/log/syslog/#Dial) can be called instead of `syslog.New(...)`\r\n\r\nhttps://github.com/ochinchina/supervisord/blob/9991ad8a8bacd0fc57c34866099954afea48b1dd/logger/log_unix.go#L9-L15\r\n\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/ochinchina/supervisord/issues/comments/392397933","html_url":"https://github.com/ochinchina/supervisord/issues/91#issuecomment-392397933","issue_url":"https://api.github.com/repos/ochinchina/supervisord/issues/91","id":392397933,"user":{"login":"ochinchina","id":5602638,"avatar_url":"https://avatars2.githubusercontent.com/u/5602638?v=4","gravatar_id":"","url":"https://api.github.com/users/ochinchina","html_url":"https://github.com/ochinchina","followers_url":"https://api.github.com/users/ochinchina/followers","following_url":"https://api.github.com/users/ochinchina/following{/other_user}","gists_url":"https://api.github.com/users/ochinchina/gists{/gist_id}","starred_url":"https://api.github.com/users/ochinchina/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ochinchina/subscriptions","organizations_url":"https://api.github.com/users/ochinchina/orgs","repos_url":"https://api.github.com/users/ochinchina/repos","events_url":"https://api.github.com/users/ochinchina/events{/privacy}","received_events_url":"https://api.github.com/users/ochinchina/received_events","type":"User","site_admin":false},"created_at":"2018-05-28T01:46:01Z","updated_at":"2018-05-28T01:46:01Z","author_association":"OWNER","body":"the syslog is extened to support the remote syslog system now. To write log to remote syslog, we can configure it with \"syslog @[protocol:]host[:port]\" format. The protocol must be \"tcp\" or \"udp\". If protocol is missing, it's value is \"udp\". If port is missing, for udp/tcp protocol, it's value is 514/6514."}}
{"actor":{"display_login":"ochinchina"}}