{"action":"created","comment":{"url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/pulls/comments/86691562","pull_request_review_id":7337216,"id":86691562,"diff_hunk":"@@ -488,4 +493,28 @@ public ChannelPool getChannelPool() {\n     public EventLoopGroup getEventLoopGroup() {\n         return eventLoopGroup;\n     }\n+\n+    public ClientStats getClientStats() {\n+        final Map<String, Long> totalConnectionsPerHost = openChannels\n+                    .stream()\n+                    .map(Channel::remoteAddress)\n+                    .filter(a -> a.getClass() == InetSocketAddress.class)\n+                    .map(a -> (InetSocketAddress) a)","path":"client/src/main/java/org/asynchttpclient/netty/channel/ChannelManager.java","position":37,"original_position":37,"commit_id":"5f7089ec851c5ce27ea85e143c02cfc2c0ea92e0","original_commit_id":"5f7089ec851c5ce27ea85e143c02cfc2c0ea92e0","user":{"login":"slandelle","id":849197,"avatar_url":"https://avatars.githubusercontent.com/u/849197?v=3","gravatar_id":"","url":"https://api.github.com/users/slandelle","html_url":"https://github.com/slandelle","followers_url":"https://api.github.com/users/slandelle/followers","following_url":"https://api.github.com/users/slandelle/following{/other_user}","gists_url":"https://api.github.com/users/slandelle/gists{/gist_id}","starred_url":"https://api.github.com/users/slandelle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/slandelle/subscriptions","organizations_url":"https://api.github.com/users/slandelle/orgs","repos_url":"https://api.github.com/users/slandelle/repos","events_url":"https://api.github.com/users/slandelle/events{/privacy}","received_events_url":"https://api.github.com/users/slandelle/received_events","type":"User","site_admin":false},"body":"I think it's pretty safe to cast","created_at":"2016-11-06T17:38:11Z","updated_at":"2016-11-06T17:38:59Z","html_url":"https://github.com/AsyncHttpClient/async-http-client/pull/1255#discussion_r86691562","pull_request_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/pulls/1255","_links":{"self":{"href":"https://api.github.com/repos/AsyncHttpClient/async-http-client/pulls/comments/86691562"},"html":{"href":"https://github.com/AsyncHttpClient/async-http-client/pull/1255#discussion_r86691562"},"pull_request":{"href":"https://api.github.com/repos/AsyncHttpClient/async-http-client/pulls/1255"}}},"pull_request":{"url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/pulls/1255","id":86668703,"html_url":"https://github.com/AsyncHttpClient/async-http-client/pull/1255","diff_url":"https://github.com/AsyncHttpClient/async-http-client/pull/1255.diff","patch_url":"https://github.com/AsyncHttpClient/async-http-client/pull/1255.patch","issue_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/issues/1255","number":1255,"state":"open","locked":false,"title":"#1130: Diagnostics/debug info for AsyncHttpClient","user":{"login":"Diagoras","id":1823098,"avatar_url":"https://avatars.githubusercontent.com/u/1823098?v=3","gravatar_id":"","url":"https://api.github.com/users/Diagoras","html_url":"https://github.com/Diagoras","followers_url":"https://api.github.com/users/Diagoras/followers","following_url":"https://api.github.com/users/Diagoras/following{/other_user}","gists_url":"https://api.github.com/users/Diagoras/gists{/gist_id}","starred_url":"https://api.github.com/users/Diagoras/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Diagoras/subscriptions","organizations_url":"https://api.github.com/users/Diagoras/orgs","repos_url":"https://api.github.com/users/Diagoras/repos","events_url":"https://api.github.com/users/Diagoras/events{/privacy}","received_events_url":"https://api.github.com/users/Diagoras/received_events","type":"User","site_admin":false},"body":"This is a first crack at addressing that issue, with only information on the total number of connections and how many are active or idle. At the very least, it'd be nice to also see the same data on a per host basis, but I thought I'd get what I've done so far looked at first.\n","created_at":"2016-09-26T00:44:50Z","updated_at":"2016-11-06T17:38:59Z","closed_at":null,"merged_at":null,"merge_commit_sha":"faa99f6340211ef00554db1a6c94dd5b964272ec","assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/milestones/78","html_url":"https://github.com/AsyncHttpClient/async-http-client/milestones/2.1.0","labels_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/milestones/78/labels","id":1796958,"number":78,"title":"2.1.0","description":"","creator":{"login":"slandelle","id":849197,"avatar_url":"https://avatars.githubusercontent.com/u/849197?v=3","gravatar_id":"","url":"https://api.github.com/users/slandelle","html_url":"https://github.com/slandelle","followers_url":"https://api.github.com/users/slandelle/followers","following_url":"https://api.github.com/users/slandelle/following{/other_user}","gists_url":"https://api.github.com/users/slandelle/gists{/gist_id}","starred_url":"https://api.github.com/users/slandelle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/slandelle/subscriptions","organizations_url":"https://api.github.com/users/slandelle/orgs","repos_url":"https://api.github.com/users/slandelle/repos","events_url":"https://api.github.com/users/slandelle/events{/privacy}","received_events_url":"https://api.github.com/users/slandelle/received_events","type":"User","site_admin":false},"open_issues":6,"closed_issues":1,"state":"open","created_at":"2016-05-30T14:05:27Z","updated_at":"2016-11-01T08:27:37Z","due_on":null,"closed_at":null},"commits_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/pulls/1255/commits","review_comments_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/pulls/1255/comments","review_comment_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/pulls/comments{/number}","comments_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/issues/1255/comments","statuses_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/statuses/5f7089ec851c5ce27ea85e143c02cfc2c0ea92e0","head":{"label":"Diagoras:1130","ref":"1130","sha":"5f7089ec851c5ce27ea85e143c02cfc2c0ea92e0","user":{"login":"Diagoras","id":1823098,"avatar_url":"https://avatars.githubusercontent.com/u/1823098?v=3","gravatar_id":"","url":"https://api.github.com/users/Diagoras","html_url":"https://github.com/Diagoras","followers_url":"https://api.github.com/users/Diagoras/followers","following_url":"https://api.github.com/users/Diagoras/following{/other_user}","gists_url":"https://api.github.com/users/Diagoras/gists{/gist_id}","starred_url":"https://api.github.com/users/Diagoras/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Diagoras/subscriptions","organizations_url":"https://api.github.com/users/Diagoras/orgs","repos_url":"https://api.github.com/users/Diagoras/repos","events_url":"https://api.github.com/users/Diagoras/events{/privacy}","received_events_url":"https://api.github.com/users/Diagoras/received_events","type":"User","site_admin":false},"repo":{"id":69075719,"name":"async-http-client","full_name":"Diagoras/async-http-client","owner":{"login":"Diagoras","id":1823098,"avatar_url":"https://avatars.githubusercontent.com/u/1823098?v=3","gravatar_id":"","url":"https://api.github.com/users/Diagoras","html_url":"https://github.com/Diagoras","followers_url":"https://api.github.com/users/Diagoras/followers","following_url":"https://api.github.com/users/Diagoras/following{/other_user}","gists_url":"https://api.github.com/users/Diagoras/gists{/gist_id}","starred_url":"https://api.github.com/users/Diagoras/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Diagoras/subscriptions","organizations_url":"https://api.github.com/users/Diagoras/orgs","repos_url":"https://api.github.com/users/Diagoras/repos","events_url":"https://api.github.com/users/Diagoras/events{/privacy}","received_events_url":"https://api.github.com/users/Diagoras/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/Diagoras/async-http-client","description":"Asynchronous Http and WebSocket Client library for Java ","fork":true,"url":"https://api.github.com/repos/Diagoras/async-http-client","forks_url":"https://api.github.com/repos/Diagoras/async-http-client/forks","keys_url":"https://api.github.com/repos/Diagoras/async-http-client/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Diagoras/async-http-client/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Diagoras/async-http-client/teams","hooks_url":"https://api.github.com/repos/Diagoras/async-http-client/hooks","issue_events_url":"https://api.github.com/repos/Diagoras/async-http-client/issues/events{/number}","events_url":"https://api.github.com/repos/Diagoras/async-http-client/events","assignees_url":"https://api.github.com/repos/Diagoras/async-http-client/assignees{/user}","branches_url":"https://api.github.com/repos/Diagoras/async-http-client/branches{/branch}","tags_url":"https://api.github.com/repos/Diagoras/async-http-client/tags","blobs_url":"https://api.github.com/repos/Diagoras/async-http-client/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Diagoras/async-http-client/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Diagoras/async-http-client/git/refs{/sha}","trees_url":"https://api.github.com/repos/Diagoras/async-http-client/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Diagoras/async-http-client/statuses/{sha}","languages_url":"https://api.github.com/repos/Diagoras/async-http-client/languages","stargazers_url":"https://api.github.com/repos/Diagoras/async-http-client/stargazers","contributors_url":"https://api.github.com/repos/Diagoras/async-http-client/contributors","subscribers_url":"https://api.github.com/repos/Diagoras/async-http-client/subscribers","subscription_url":"https://api.github.com/repos/Diagoras/async-http-client/subscription","commits_url":"https://api.github.com/repos/Diagoras/async-http-client/commits{/sha}","git_commits_url":"https://api.github.com/repos/Diagoras/async-http-client/git/commits{/sha}","comments_url":"https://api.github.com/repos/Diagoras/async-http-client/comments{/number}","issue_comment_url":"https://api.github.com/repos/Diagoras/async-http-client/issues/comments{/number}","contents_url":"https://api.github.com/repos/Diagoras/async-http-client/contents/{+path}","compare_url":"https://api.github.com/repos/Diagoras/async-http-client/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Diagoras/async-http-client/merges","archive_url":"https://api.github.com/repos/Diagoras/async-http-client/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Diagoras/async-http-client/downloads","issues_url":"https://api.github.com/repos/Diagoras/async-http-client/issues{/number}","pulls_url":"https://api.github.com/repos/Diagoras/async-http-client/pulls{/number}","milestones_url":"https://api.github.com/repos/Diagoras/async-http-client/milestones{/number}","notifications_url":"https://api.github.com/repos/Diagoras/async-http-client/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Diagoras/async-http-client/labels{/name}","releases_url":"https://api.github.com/repos/Diagoras/async-http-client/releases{/id}","deployments_url":"https://api.github.com/repos/Diagoras/async-http-client/deployments","created_at":"2016-09-24T02:53:56Z","updated_at":"2016-09-24T02:53:59Z","pushed_at":"2016-11-06T04:19:36Z","git_url":"git://github.com/Diagoras/async-http-client.git","ssh_url":"git@github.com:Diagoras/async-http-client.git","clone_url":"https://github.com/Diagoras/async-http-client.git","svn_url":"https://github.com/Diagoras/async-http-client","homepage":"","size":16064,"stargazers_count":0,"watchers_count":0,"language":"Java","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"AsyncHttpClient:master","ref":"master","sha":"b641b46db4f01fdbbce2fe6d544cca4b4b27b3b5","user":{"login":"AsyncHttpClient","id":381412,"avatar_url":"https://avatars.githubusercontent.com/u/381412?v=3","gravatar_id":"","url":"https://api.github.com/users/AsyncHttpClient","html_url":"https://github.com/AsyncHttpClient","followers_url":"https://api.github.com/users/AsyncHttpClient/followers","following_url":"https://api.github.com/users/AsyncHttpClient/following{/other_user}","gists_url":"https://api.github.com/users/AsyncHttpClient/gists{/gist_id}","starred_url":"https://api.github.com/users/AsyncHttpClient/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AsyncHttpClient/subscriptions","organizations_url":"https://api.github.com/users/AsyncHttpClient/orgs","repos_url":"https://api.github.com/users/AsyncHttpClient/repos","events_url":"https://api.github.com/users/AsyncHttpClient/events{/privacy}","received_events_url":"https://api.github.com/users/AsyncHttpClient/received_events","type":"Organization","site_admin":false},"repo":{"id":1450115,"name":"async-http-client","full_name":"AsyncHttpClient/async-http-client","owner":{"login":"AsyncHttpClient","id":381412,"avatar_url":"https://avatars.githubusercontent.com/u/381412?v=3","gravatar_id":"","url":"https://api.github.com/users/AsyncHttpClient","html_url":"https://github.com/AsyncHttpClient","followers_url":"https://api.github.com/users/AsyncHttpClient/followers","following_url":"https://api.github.com/users/AsyncHttpClient/following{/other_user}","gists_url":"https://api.github.com/users/AsyncHttpClient/gists{/gist_id}","starred_url":"https://api.github.com/users/AsyncHttpClient/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AsyncHttpClient/subscriptions","organizations_url":"https://api.github.com/users/AsyncHttpClient/orgs","repos_url":"https://api.github.com/users/AsyncHttpClient/repos","events_url":"https://api.github.com/users/AsyncHttpClient/events{/privacy}","received_events_url":"https://api.github.com/users/AsyncHttpClient/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/AsyncHttpClient/async-http-client","description":"Asynchronous Http and WebSocket Client library for Java ","fork":false,"url":"https://api.github.com/repos/AsyncHttpClient/async-http-client","forks_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/forks","keys_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/keys{/key_id}","collaborators_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/teams","hooks_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/hooks","issue_events_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/issues/events{/number}","events_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/events","assignees_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/assignees{/user}","branches_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/branches{/branch}","tags_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/tags","blobs_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/git/refs{/sha}","trees_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/git/trees{/sha}","statuses_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/statuses/{sha}","languages_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/languages","stargazers_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/stargazers","contributors_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/contributors","subscribers_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/subscribers","subscription_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/subscription","commits_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/commits{/sha}","git_commits_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/git/commits{/sha}","comments_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/comments{/number}","issue_comment_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/issues/comments{/number}","contents_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/contents/{+path}","compare_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/compare/{base}...{head}","merges_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/merges","archive_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/downloads","issues_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/issues{/number}","pulls_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/pulls{/number}","milestones_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/milestones{/number}","notifications_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/labels{/name}","releases_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/releases{/id}","deployments_url":"https://api.github.com/repos/AsyncHttpClient/async-http-client/deployments","created_at":"2011-03-07T13:41:46Z","updated_at":"2016-11-06T10:30:52Z","pushed_at":"2016-11-06T04:19:39Z","git_url":"git://github.com/AsyncHttpClient/async-http-client.git","ssh_url":"git@github.com:AsyncHttpClient/async-http-client.git","clone_url":"https://github.com/AsyncHttpClient/async-http-client.git","svn_url":"https://github.com/AsyncHttpClient/async-http-client","homepage":"","size":21854,"stargazers_count":3216,"watchers_count":3216,"language":"Java","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":962,"mirror_url":null,"open_issues_count":36,"forks":962,"open_issues":36,"watchers":3216,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/AsyncHttpClient/async-http-client/pulls/1255"},"html":{"href":"https://github.com/AsyncHttpClient/async-http-client/pull/1255"},"issue":{"href":"https://api.github.com/repos/AsyncHttpClient/async-http-client/issues/1255"},"comments":{"href":"https://api.github.com/repos/AsyncHttpClient/async-http-client/issues/1255/comments"},"review_comments":{"href":"https://api.github.com/repos/AsyncHttpClient/async-http-client/pulls/1255/comments"},"review_comment":{"href":"https://api.github.com/repos/AsyncHttpClient/async-http-client/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/AsyncHttpClient/async-http-client/pulls/1255/commits"},"statuses":{"href":"https://api.github.com/repos/AsyncHttpClient/async-http-client/statuses/5f7089ec851c5ce27ea85e143c02cfc2c0ea92e0"}}}}
{"actor":{"display_login":"slandelle"}}