{"action":"created","issue":{"url":"https://api.github.com/repos/elastic/beats/issues/2629","repository_url":"https://api.github.com/repos/elastic/beats","labels_url":"https://api.github.com/repos/elastic/beats/issues/2629/labels{/name}","comments_url":"https://api.github.com/repos/elastic/beats/issues/2629/comments","events_url":"https://api.github.com/repos/elastic/beats/issues/2629/events","html_url":"https://github.com/elastic/beats/issues/2629","id":178847245,"number":2629,"title":"Docker module improvements","user":{"login":"ruflin","id":244900,"avatar_url":"https://avatars.githubusercontent.com/u/244900?v=3","gravatar_id":"","url":"https://api.github.com/users/ruflin","html_url":"https://github.com/ruflin","followers_url":"https://api.github.com/users/ruflin/followers","following_url":"https://api.github.com/users/ruflin/following{/other_user}","gists_url":"https://api.github.com/users/ruflin/gists{/gist_id}","starred_url":"https://api.github.com/users/ruflin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ruflin/subscriptions","organizations_url":"https://api.github.com/users/ruflin/orgs","repos_url":"https://api.github.com/users/ruflin/repos","events_url":"https://api.github.com/users/ruflin/events{/privacy}","received_events_url":"https://api.github.com/users/ruflin/received_events","type":"User","site_admin":false},"labels":[{"id":296601926,"url":"https://api.github.com/repos/elastic/beats/labels/meta","name":"meta","color":"ff8c00","default":false},{"id":331378892,"url":"https://api.github.com/repos/elastic/beats/labels/Metricbeat","name":"Metricbeat","color":"008000","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":8,"created_at":"2016-09-23T10:59:03Z","updated_at":"2016-11-18T10:08:21Z","closed_at":null,"body":"- [x] Add tests to generate `data.json` files https://github.com/elastic/beats/pull/2665\r\n- [x] Check that config files are according to standard (experimental disabled by default) https://github.com/elastic/beats/pull/2665\r\n- [x] Review all docker fields for the naming convention https://github.com/elastic/beats/pull/2665\r\n- [x] Add CHANGELOG update https://github.com/elastic/beats/pull/2674\r\n- [x] Do manual tests \r\n- [x] Complete fields.yml with all fields https://github.com/elastic/beats/pull/2674\r\n- [ ] Add system tests to verify fields.yml https://github.com/elastic/beats/pull/2971\r\n- [ ] Add more tests\r\n- [x] Add MetricSet for [/info](https://docs.docker.com/engine/reference/api/docker_remote_api_v1.24/#/display-system-wide-information):  https://github.com/elastic/beats/pull/2672\r\n- [ ] Run `golint ./... | grep -v vendor` and check errors for docker module\r\n- [x] Add dashboard #2943.\r\n- [ ] Add socket info under host if used: https://github.com/elastic/beats/pull/2665#discussion_r82192489\r\n- [ ] Change and test labels to be taken with . if possible: https://github.com/elastic/beats/pull/2665#discussion_r82193492\r\n- [ ] Write migration guide from [dockbeat](https://github.com/Ingensi/dockbeat)\r\n- [ ] How to handle ports and labels list in container metric\r\n- [ ] Limit number of digits for percentage value. Use same logic as in system/cpu metricset\r\n- [ ] Fetching CPU data takes > 2s because of average calculation on docker side -> API Problem"},"comment":{"url":"https://api.github.com/repos/elastic/beats/issues/comments/261494953","html_url":"https://github.com/elastic/beats/issues/2629#issuecomment-261494953","issue_url":"https://api.github.com/repos/elastic/beats/issues/2629","id":261494953,"user":{"login":"ruflin","id":244900,"avatar_url":"https://avatars.githubusercontent.com/u/244900?v=3","gravatar_id":"","url":"https://api.github.com/users/ruflin","html_url":"https://github.com/ruflin","followers_url":"https://api.github.com/users/ruflin/followers","following_url":"https://api.github.com/users/ruflin/following{/other_user}","gists_url":"https://api.github.com/users/ruflin/gists{/gist_id}","starred_url":"https://api.github.com/users/ruflin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ruflin/subscriptions","organizations_url":"https://api.github.com/users/ruflin/orgs","repos_url":"https://api.github.com/users/ruflin/repos","events_url":"https://api.github.com/users/ruflin/events{/privacy}","received_events_url":"https://api.github.com/users/ruflin/received_events","type":"User","site_admin":false},"created_at":"2016-11-18T10:08:21Z","updated_at":"2016-11-18T10:08:21Z","body":"For the ports I was thinking if we could use one of the fields as `identifier` which at least will make accessing the fields easier. Assuming someone is interested in search for the port information, which info will he filter on? Ingoing / outgoing / ip?\r\n\r\nAssuming it is the private port and the private port is unique, we could do the following for the json example below:\r\n\r\nCurrent structure\r\n```\r\n \"ports\": [\r\n        {\r\n          \"ip\": \"\",\r\n          \"port\": {\r\n            \"private\": 9300,\r\n            \"public\": 0\r\n          },\r\n          \"type\": \"tcp\"\r\n        },\r\n        {\r\n          \"ip\": \"\",\r\n          \"port\": {\r\n            \"private\": 9200,\r\n            \"public\": 0\r\n          },\r\n          \"type\": \"tcp\"\r\n        }\r\n      ],\r\n```\r\n\r\nPort based:\r\n```\r\ndocker.container.port.9300.ip:\r\ndocker.container.port.9300.port.public:\r\ndocker.container.port.9200.ip:\r\n```\r\n\r\nBut that is far from public. So far our approach was when we had such \"arrays\" is that we introduced a separate metricset. We could do the same here and introduce a `port` metricset which only contains the port info so it can be queried if needed.\r\n\r\n@rikatz It would be interesting to hear how you would like to use the data when it is in elasticsearch. That could give us some hints on how to store it. One use case I have in mind is having alerts in watcher that send a notification as soon as a container with a specific port is open.\r\n\r\n"}}
{"actor":{"display_login":"ruflin"}}