{"action":"created","issue":{"url":"https://api.github.com/repos/prometheus/statsd_exporter/issues/125","repository_url":"https://api.github.com/repos/prometheus/statsd_exporter","labels_url":"https://api.github.com/repos/prometheus/statsd_exporter/issues/125/labels{/name}","comments_url":"https://api.github.com/repos/prometheus/statsd_exporter/issues/125/comments","events_url":"https://api.github.com/repos/prometheus/statsd_exporter/issues/125/events","html_url":"https://github.com/prometheus/statsd_exporter/issues/125","id":295111931,"number":125,"title":"Clarify comment about \"native solution\" long term in Readme","user":{"login":"SamSaffron","id":5213,"avatar_url":"https://avatars1.githubusercontent.com/u/5213?v=4","gravatar_id":"","url":"https://api.github.com/users/SamSaffron","html_url":"https://github.com/SamSaffron","followers_url":"https://api.github.com/users/SamSaffron/followers","following_url":"https://api.github.com/users/SamSaffron/following{/other_user}","gists_url":"https://api.github.com/users/SamSaffron/gists{/gist_id}","starred_url":"https://api.github.com/users/SamSaffron/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SamSaffron/subscriptions","organizations_url":"https://api.github.com/users/SamSaffron/orgs","repos_url":"https://api.github.com/users/SamSaffron/repos","events_url":"https://api.github.com/users/SamSaffron/events{/privacy}","received_events_url":"https://api.github.com/users/SamSaffron/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2018-02-07T12:01:26Z","updated_at":"2018-02-07T15:15:25Z","closed_at":"2018-02-07T14:37:47Z","author_association":"NONE","body":"Readme says:\r\n\r\n> We recommend this only as an intermediate solution and recommend switching to native Prometheus instrumentation in the long term.\r\n\r\nI would like this somewhat clarified. For forking web servers such as Passenger, Unicorn and Puma in the Ruby ecosystem, requests are round robined between process forks. This means you have no simple way of sharing state between forks and thus have a hard time collating data for an exporter. \r\n\r\nIn this kind of setup a solution like statsd_exporter seems reasonable as the alternatives are all similarly messy. Be it sharing a pipe between all forks or nmaping a file and so on. \r\n\r\nI think the Readme should clarify that this is a completely legitimate solution for specific use cases such as aggregation of data from forked processes that all share an HTTP listener. \r\n"},"comment":{"url":"https://api.github.com/repos/prometheus/statsd_exporter/issues/comments/363800352","html_url":"https://github.com/prometheus/statsd_exporter/issues/125#issuecomment-363800352","issue_url":"https://api.github.com/repos/prometheus/statsd_exporter/issues/125","id":363800352,"user":{"login":"SamSaffron","id":5213,"avatar_url":"https://avatars1.githubusercontent.com/u/5213?v=4","gravatar_id":"","url":"https://api.github.com/users/SamSaffron","html_url":"https://github.com/SamSaffron","followers_url":"https://api.github.com/users/SamSaffron/followers","following_url":"https://api.github.com/users/SamSaffron/following{/other_user}","gists_url":"https://api.github.com/users/SamSaffron/gists{/gist_id}","starred_url":"https://api.github.com/users/SamSaffron/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SamSaffron/subscriptions","organizations_url":"https://api.github.com/users/SamSaffron/orgs","repos_url":"https://api.github.com/users/SamSaffron/repos","events_url":"https://api.github.com/users/SamSaffron/events{/privacy}","received_events_url":"https://api.github.com/users/SamSaffron/received_events","type":"User","site_admin":false},"created_at":"2018-02-07T15:15:24Z","updated_at":"2018-02-07T15:15:24Z","author_association":"NONE","body":"Keep in mind this nmap solution has some serious limitations which is why it has not been merged, especially in pathologic cases where forked processes are crashing. \r\n\r\nWe ended up building https://github.com/discourse/prometheus_exporter but essentially it ends up being a solution that is similar enough to statsd_exporter that I just don't feel it is justified saying \"temporary\" for statsd. Sure prom exporter is more flexible, but statsd exporter is also fine, and if implemented somewhere I would not be knocking on anyones door to migrate to ruby prom exporter.  \r\n\r\nThere are other forking servers out there that are not Ruby and forwarding metrics to a central collector on the box is a reasonable solution. "}}
{"actor":{"display_login":"SamSaffron"}}