{"action":"created","issue":{"url":"https://api.github.com/repos/PacificBiosciences/smrtflow/issues/175","repository_url":"https://api.github.com/repos/PacificBiosciences/smrtflow","labels_url":"https://api.github.com/repos/PacificBiosciences/smrtflow/issues/175/labels{/name}","comments_url":"https://api.github.com/repos/PacificBiosciences/smrtflow/issues/175/comments","events_url":"https://api.github.com/repos/PacificBiosciences/smrtflow/issues/175/events","html_url":"https://github.com/PacificBiosciences/smrtflow/pull/175","id":160990862,"number":175,"title":"New 'metrics' model for health service","user":{"login":"smcclellan7","id":16234182,"avatar_url":"https://avatars.githubusercontent.com/u/16234182?v=3","gravatar_id":"","url":"https://api.github.com/users/smcclellan7","html_url":"https://github.com/smcclellan7","followers_url":"https://api.github.com/users/smcclellan7/followers","following_url":"https://api.github.com/users/smcclellan7/following{/other_user}","gists_url":"https://api.github.com/users/smcclellan7/gists{/gist_id}","starred_url":"https://api.github.com/users/smcclellan7/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/smcclellan7/subscriptions","organizations_url":"https://api.github.com/users/smcclellan7/orgs","repos_url":"https://api.github.com/users/smcclellan7/repos","events_url":"https://api.github.com/users/smcclellan7/events{/privacy}","received_events_url":"https://api.github.com/users/smcclellan7/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2016-06-17T23:09:33Z","updated_at":"2016-06-21T18:46:07Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/PacificBiosciences/smrtflow/pulls/175","html_url":"https://github.com/PacificBiosciences/smrtflow/pull/175","diff_url":"https://github.com/PacificBiosciences/smrtflow/pull/175.diff","patch_url":"https://github.com/PacificBiosciences/smrtflow/pull/175.patch"},"body":""},"comment":{"url":"https://api.github.com/repos/PacificBiosciences/smrtflow/issues/comments/227534345","html_url":"https://github.com/PacificBiosciences/smrtflow/pull/175#issuecomment-227534345","issue_url":"https://api.github.com/repos/PacificBiosciences/smrtflow/issues/175","id":227534345,"user":{"login":"smcclellan7","id":16234182,"avatar_url":"https://avatars.githubusercontent.com/u/16234182?v=3","gravatar_id":"","url":"https://api.github.com/users/smcclellan7","html_url":"https://github.com/smcclellan7","followers_url":"https://api.github.com/users/smcclellan7/followers","following_url":"https://api.github.com/users/smcclellan7/following{/other_user}","gists_url":"https://api.github.com/users/smcclellan7/gists{/gist_id}","starred_url":"https://api.github.com/users/smcclellan7/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/smcclellan7/subscriptions","organizations_url":"https://api.github.com/users/smcclellan7/orgs","repos_url":"https://api.github.com/users/smcclellan7/repos","events_url":"https://api.github.com/users/smcclellan7/events{/privacy}","received_events_url":"https://api.github.com/users/smcclellan7/received_events","type":"User","site_admin":false},"created_at":"2016-06-21T18:46:07Z","updated_at":"2016-06-21T18:46:07Z","body":"I think this will be much more useful.  The way the old API worked, the client had to set the level of the health gauge explicitly with each update.  That would work fine for something like, say, disk space, where you don't need to coordinate info from multiple sources.  But let's say you wanted to track something like the latency of all the smrtlink service endpoints.  You go to each of the service endpoints and put a stopwatch on it, but then what?  You can't know how to set the health of the ALL_ENDPOINTS_LATENCY metric from just that one data point.\r\n\r\nThis would solve that problem.  Instead of setting the health level with every update, you just send the latency, and you set up the metric to take, say, the average latency over the last hour, and you define your health levels to be like, > 0.5 sec =  caution, > 1 sec = alert, > 3 sec = critical.  Or whatever.  But the point is, the health service can collate the data for you.\r\n\r\nAlso, with this new API, updates can be tracked by multiple metrics.  So lets say you had your ALL_ENDPOINTS_LATENCY metric and a JOBS_MANAGER_SERVICE_LATENCY metric and a POST_DATA_LATENCY metric.  When the JobsManagerService gets a POST request, instead of sending updates to three different metrics, you send one update with three tags, and all three metrics pick up that update.\r\n\r\nI think it's a good direction to move in, in general, and I also think it could be useful for tracking some of these timeouts and sqlite_busy errors and such."}}
{"actor":{"display_login":"smcclellan7"}}