{"action":"created","issue":{"url":"https://api.github.com/repos/concourse/concourse/issues/2584","repository_url":"https://api.github.com/repos/concourse/concourse","labels_url":"https://api.github.com/repos/concourse/concourse/issues/2584/labels{/name}","comments_url":"https://api.github.com/repos/concourse/concourse/issues/2584/comments","events_url":"https://api.github.com/repos/concourse/concourse/issues/2584/events","html_url":"https://github.com/concourse/concourse/issues/2584","id":359946963,"node_id":"MDU6SXNzdWUzNTk5NDY5NjM=","number":2584,"title":"Enrich prometheus build metrics","user":{"login":"bradbeam","id":4570765,"node_id":"MDQ6VXNlcjQ1NzA3NjU=","avatar_url":"https://avatars3.githubusercontent.com/u/4570765?v=4","gravatar_id":"","url":"https://api.github.com/users/bradbeam","html_url":"https://github.com/bradbeam","followers_url":"https://api.github.com/users/bradbeam/followers","following_url":"https://api.github.com/users/bradbeam/following{/other_user}","gists_url":"https://api.github.com/users/bradbeam/gists{/gist_id}","starred_url":"https://api.github.com/users/bradbeam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bradbeam/subscriptions","organizations_url":"https://api.github.com/users/bradbeam/orgs","repos_url":"https://api.github.com/users/bradbeam/repos","events_url":"https://api.github.com/users/bradbeam/events{/privacy}","received_events_url":"https://api.github.com/users/bradbeam/received_events","type":"User","site_admin":false},"labels":[{"id":765827297,"node_id":"MDU6TGFiZWw3NjU4MjcyOTc=","url":"https://api.github.com/repos/concourse/concourse/labels/enhancement","name":"enhancement","color":"a2eeef","default":true},{"id":1026635153,"node_id":"MDU6TGFiZWwxMDI2NjM1MTUz","url":"https://api.github.com/repos/concourse/concourse/labels/metrics","name":"metrics","color":"01AC92","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2018-09-13T15:25:56Z","updated_at":"2018-11-16T23:44:11Z","closed_at":null,"author_association":"NONE","body":"# Feature Request\r\n\r\n## What challenge are you facing?\r\n\r\nWe're attempting to monitor the pipeline, we're facing issues with not enough data available via prometheus. \r\nThe two components we feel are missing are:\r\n- I don't have a good way to know if my most recent pipeline run was successful or a failure. The existing counters provide some visibility, but not enough to definitively say what the status of my most recent run was.\r\n- I don't have a way to identify which job in a pipeline failed. In our pipelines, we've got a different job for each environment ( dev/staging/prod ) that executes serially. If the dev or staging job fails, we could route that to slack, but if a prod job fails, we'd want to be paged. \r\n\r\n## A Modest Proposal\r\nI think both of these could be addressed by including an additional metric, something like the following\r\n\r\n```\r\n\tlastBuildStatusVec := prometheus.NewGaugeVec(\r\n\t\tprometheus.GaugeOpts{\r\n\t\t\tNamespace: \"concourse\",\r\n\t\t\tSubsystem: \"pipeline\",\r\n\t\t\tName:      \"status\",\r\n\t\t\tHelp:      \"Status of the most recent pipeline ( 0 = success, >0 = failure ).\",\r\n\t\t},\r\n\t\t[]string{\"team\", \"pipeline\", \"job\"},\r\n)\r\n```\r\nThis would allow me to  monitor the pipeline as a whole ( `sum(concourse_pipeline_status{pipeline=\"deploy\"}) > 0` ) or monitor the individual jobs ( `concourse_pipeline_status{pipeline=\"deploy\",job=\"prod\"} > 0` )"},"comment":{"url":"https://api.github.com/repos/concourse/concourse/issues/comments/439562212","html_url":"https://github.com/concourse/concourse/issues/2584#issuecomment-439562212","issue_url":"https://api.github.com/repos/concourse/concourse/issues/2584","id":439562212,"node_id":"MDEyOklzc3VlQ29tbWVudDQzOTU2MjIxMg==","user":{"login":"jpluscplusm","id":224508,"node_id":"MDQ6VXNlcjIyNDUwOA==","avatar_url":"https://avatars0.githubusercontent.com/u/224508?v=4","gravatar_id":"","url":"https://api.github.com/users/jpluscplusm","html_url":"https://github.com/jpluscplusm","followers_url":"https://api.github.com/users/jpluscplusm/followers","following_url":"https://api.github.com/users/jpluscplusm/following{/other_user}","gists_url":"https://api.github.com/users/jpluscplusm/gists{/gist_id}","starred_url":"https://api.github.com/users/jpluscplusm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jpluscplusm/subscriptions","organizations_url":"https://api.github.com/users/jpluscplusm/orgs","repos_url":"https://api.github.com/users/jpluscplusm/repos","events_url":"https://api.github.com/users/jpluscplusm/events{/privacy}","received_events_url":"https://api.github.com/users/jpluscplusm/received_events","type":"User","site_admin":false},"created_at":"2018-11-16T23:44:11Z","updated_at":"2018-11-16T23:44:11Z","author_association":"CONTRIBUTOR","body":"@bradbeam So whilst I selfishly wrote #2785 to fix my specific problem, I'm not sure if it solves all your observability challenges, especially at the whole pipeline level. What's your feeling about if this issue still describes an unsolved problem?"}}
{"actor":{"display_login":"jpluscplusm"}}