{"action":"created","issue":{"url":"https://api.github.com/repos/hawkular/hawkular-alerts/issues/268","repository_url":"https://api.github.com/repos/hawkular/hawkular-alerts","labels_url":"https://api.github.com/repos/hawkular/hawkular-alerts/issues/268/labels{/name}","comments_url":"https://api.github.com/repos/hawkular/hawkular-alerts/issues/268/comments","events_url":"https://api.github.com/repos/hawkular/hawkular-alerts/issues/268/events","html_url":"https://github.com/hawkular/hawkular-alerts/pull/268","id":192051257,"number":268,"title":"HWKALERTS-206 Improve global plugins","user":{"login":"lucasponce","id":1662329,"avatar_url":"https://avatars.githubusercontent.com/u/1662329?v=3","gravatar_id":"","url":"https://api.github.com/users/lucasponce","html_url":"https://github.com/lucasponce","followers_url":"https://api.github.com/users/lucasponce/followers","following_url":"https://api.github.com/users/lucasponce/following{/other_user}","gists_url":"https://api.github.com/users/lucasponce/gists{/gist_id}","starred_url":"https://api.github.com/users/lucasponce/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lucasponce/subscriptions","organizations_url":"https://api.github.com/users/lucasponce/orgs","repos_url":"https://api.github.com/users/lucasponce/repos","events_url":"https://api.github.com/users/lucasponce/events{/privacy}","received_events_url":"https://api.github.com/users/lucasponce/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2016-11-28T16:28:39Z","updated_at":"2016-11-28T17:09:28Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/hawkular/hawkular-alerts/pulls/268","html_url":"https://github.com/hawkular/hawkular-alerts/pull/268","diff_url":"https://github.com/hawkular/hawkular-alerts/pull/268.diff","patch_url":"https://github.com/hawkular/hawkular-alerts/pull/268.patch"},"body":"This PR is a refactoring of global plugins.\r\nGlobal plugins were designed to listen for any action and route in a wire tap pattern to a global plugin.\r\nThis was a interesting concept as it lets to not define specifically actions on triggers in scenario where we want to be notified for all actions fired.\r\nPrevious implementation have two main drawbacks:\r\n- Global plugin required a new plugin implementation.\r\n- Configuration was global and not all flexible as desired.\r\n- Only explicit actions could be \"listened\" on the wire tap pattern.\r\n\r\nWith this new approach we maintain the same concept but we introduce several interesting enhancements:\r\n- Global plugin is removed from plugin level and moved to action definition.\r\n- No need to write an special global plugin, any plugin can perform global actions.\r\n- Global actions can be configured with tenants and with all features (filtering by status or using time constraints).\r\n- Global actions can be queried from history.\r\n\r\n \r\n"},"comment":{"url":"https://api.github.com/repos/hawkular/hawkular-alerts/issues/comments/263330490","html_url":"https://github.com/hawkular/hawkular-alerts/pull/268#issuecomment-263330490","issue_url":"https://api.github.com/repos/hawkular/hawkular-alerts/issues/268","id":263330490,"user":{"login":"jshaughn","id":2104052,"avatar_url":"https://avatars.githubusercontent.com/u/2104052?v=3","gravatar_id":"","url":"https://api.github.com/users/jshaughn","html_url":"https://github.com/jshaughn","followers_url":"https://api.github.com/users/jshaughn/followers","following_url":"https://api.github.com/users/jshaughn/following{/other_user}","gists_url":"https://api.github.com/users/jshaughn/gists{/gist_id}","starred_url":"https://api.github.com/users/jshaughn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jshaughn/subscriptions","organizations_url":"https://api.github.com/users/jshaughn/orgs","repos_url":"https://api.github.com/users/jshaughn/repos","events_url":"https://api.github.com/users/jshaughn/events{/privacy}","received_events_url":"https://api.github.com/users/jshaughn/received_events","type":"User","site_admin":false},"created_at":"2016-11-28T17:09:28Z","updated_at":"2016-11-28T17:09:28Z","body":"It's great to remove the global plugin modules, much cleaner.  And I think also easier to understand the semantics of a global action.\r\n\r\nA couple of comments to respond to, including one in the constructors that looks like a bug.\r\n\r\nNote also that the cache addition will affect (minimally) metrics and agent and QE, so we'll need PRs for the two components and also an e-mail in dev-list for Filip.  I can generate the PRs today so they will be ready, and we can send mail after the merge."}}
{"actor":{"display_login":"jshaughn"}}