{"action":"created","issue":{"url":"https://api.github.com/repos/vsoch/watchme/issues/32","repository_url":"https://api.github.com/repos/vsoch/watchme","labels_url":"https://api.github.com/repos/vsoch/watchme/issues/32/labels{/name}","comments_url":"https://api.github.com/repos/vsoch/watchme/issues/32/comments","events_url":"https://api.github.com/repos/vsoch/watchme/issues/32/events","html_url":"https://github.com/vsoch/watchme/pull/32","id":440865960,"node_id":"MDExOlB1bGxSZXF1ZXN0Mjc2MzE2NzM2","number":32,"title":"[WIP] Add/exporters","user":{"login":"vsoch","id":814322,"node_id":"MDQ6VXNlcjgxNDMyMg==","avatar_url":"https://avatars0.githubusercontent.com/u/814322?v=4","gravatar_id":"","url":"https://api.github.com/users/vsoch","html_url":"https://github.com/vsoch","followers_url":"https://api.github.com/users/vsoch/followers","following_url":"https://api.github.com/users/vsoch/following{/other_user}","gists_url":"https://api.github.com/users/vsoch/gists{/gist_id}","starred_url":"https://api.github.com/users/vsoch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vsoch/subscriptions","organizations_url":"https://api.github.com/users/vsoch/orgs","repos_url":"https://api.github.com/users/vsoch/repos","events_url":"https://api.github.com/users/vsoch/events{/privacy}","received_events_url":"https://api.github.com/users/vsoch/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":5,"created_at":"2019-05-06T20:10:23Z","updated_at":"2019-05-08T21:28:41Z","closed_at":null,"author_association":"OWNER","pull_request":{"url":"https://api.github.com/repos/vsoch/watchme/pulls/32","html_url":"https://github.com/vsoch/watchme/pull/32","diff_url":"https://github.com/vsoch/watchme/pull/32.diff","patch_url":"https://github.com/vsoch/watchme/pull/32.patch"},"body":"This is a work in progress to add (optional) exporters for a watcher. The PR does the following:\r\n\r\n -  adds the idea of an extra called an exporter, contributed by [@SCHKN](https://www.github.com/SCHKN)\r\n - adds the first exporter, something called pushgateway (that I need to test) and install dependencies\r\n -  adds a code of conduct\r\n - a complete library of export functions for the watcher\r\n - new documentation around exporters, install commands\r\n - new client commands \"push,\" and \"add\" expanded to \"add-task\" and \"add-exporter\"\r\n\r\nI still need to:\r\n\r\n - [x] write clear documentation in docs/_docs/exporters/index.md for how to interact with a (general) exporter\r\n - [x]  write and document the push endpoint\r\n - [x] add functions to add/remove exporters from specific tasks\r\n - [x] if an exporter is valid, instantiated, but there is an error with pushing, it should be automatically disabled.\r\n - [x] I need to actually test the pushgateway\r\n - [ ] I need to add other (likely) export endpoints (cloud storage? drives?) see #33 \r\n - [ ] with the above, there MUST be a way to store secrets in the environment, or a file that is sourced by the watcher (but not added to the repo). It could be that a user can add a `secret_<name>` parameters that are added to a .secrets or .env file that is sourced but never added to git.\r\n - [x] allow an exporter to be activated / deactivated\r\n"},"comment":{"url":"https://api.github.com/repos/vsoch/watchme/issues/comments/490657599","html_url":"https://github.com/vsoch/watchme/pull/32#issuecomment-490657599","issue_url":"https://api.github.com/repos/vsoch/watchme/issues/32","id":490657599,"node_id":"MDEyOklzc3VlQ29tbWVudDQ5MDY1NzU5OQ==","user":{"login":"vsoch","id":814322,"node_id":"MDQ6VXNlcjgxNDMyMg==","avatar_url":"https://avatars0.githubusercontent.com/u/814322?v=4","gravatar_id":"","url":"https://api.github.com/users/vsoch","html_url":"https://github.com/vsoch","followers_url":"https://api.github.com/users/vsoch/followers","following_url":"https://api.github.com/users/vsoch/following{/other_user}","gists_url":"https://api.github.com/users/vsoch/gists{/gist_id}","starred_url":"https://api.github.com/users/vsoch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vsoch/subscriptions","organizations_url":"https://api.github.com/users/vsoch/orgs","repos_url":"https://api.github.com/users/vsoch/repos","events_url":"https://api.github.com/users/vsoch/events{/privacy}","received_events_url":"https://api.github.com/users/vsoch/received_events","type":"User","site_admin":false},"created_at":"2019-05-08T21:28:41Z","updated_at":"2019-05-08T21:28:41Z","author_association":"OWNER","body":"Hey! I just had a bit of a nutty idea that I think has feet - one that would allow for exporting results to the push gateway without adding an entire new exporters group (which feels like it has a lot of duplication for watchers, and makes the library very heavy).\r\n\r\nWhat if we just added a Prometheus watcher group, and it would have a task to (given some other watcher and tasks as variables) export some derivation of results and push to the gateway?  The only real difference would be  that we collect the users preferences for the watchers and tasks from variables, and the results would be read from get or from the present files directly.  If a user wanted to have a run coincide with the push, they would just run the commands to run the two tasks one after the other. What do you think?  It definitely brings up some interesting ideas to about orchestration or interaction between tasks :-) "}}
{"actor":{"display_login":"vsoch"}}