{"action":"created","issue":{"url":"https://api.github.com/repos/Microsoft/clrmd/issues/36","repository_url":"https://api.github.com/repos/Microsoft/clrmd","labels_url":"https://api.github.com/repos/Microsoft/clrmd/issues/36/labels{/name}","comments_url":"https://api.github.com/repos/Microsoft/clrmd/issues/36/comments","events_url":"https://api.github.com/repos/Microsoft/clrmd/issues/36/events","html_url":"https://github.com/Microsoft/clrmd/issues/36","id":120644215,"node_id":"MDU6SXNzdWUxMjA2NDQyMTU=","number":36,"title":"It would be nice to have api to explore thread logical call context","user":{"login":"gusev-p","id":6216459,"node_id":"MDQ6VXNlcjYyMTY0NTk=","avatar_url":"https://avatars0.githubusercontent.com/u/6216459?v=4","gravatar_id":"","url":"https://api.github.com/users/gusev-p","html_url":"https://github.com/gusev-p","followers_url":"https://api.github.com/users/gusev-p/followers","following_url":"https://api.github.com/users/gusev-p/following{/other_user}","gists_url":"https://api.github.com/users/gusev-p/gists{/gist_id}","starred_url":"https://api.github.com/users/gusev-p/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gusev-p/subscriptions","organizations_url":"https://api.github.com/users/gusev-p/orgs","repos_url":"https://api.github.com/users/gusev-p/repos","events_url":"https://api.github.com/users/gusev-p/events{/privacy}","received_events_url":"https://api.github.com/users/gusev-p/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2015-12-06T16:35:46Z","updated_at":"2018-12-22T18:32:44Z","closed_at":"2018-12-22T18:32:44Z","author_association":"NONE","body":"Scenario: in our generic diagnostics code for http service we want to dump thread stacks with corresponding http urls/ports. We save url/port via CallContext.LogicalSetData for incoming http requests and dispatch them to Task.Factory.StartNew. Request processing code can use async/await, so there can be more than one thread for each request. In the current version of this diagnostic we use some TaskScheduer-s magic to remember (url, managed thread id) pairs in static field. It would be much simpler to just dump all ClrRuntime.Threads having http url on ther LogicalCallContext.\n"},"comment":{"url":"https://api.github.com/repos/Microsoft/clrmd/issues/comments/449589703","html_url":"https://github.com/Microsoft/clrmd/issues/36#issuecomment-449589703","issue_url":"https://api.github.com/repos/Microsoft/clrmd/issues/36","id":449589703,"node_id":"MDEyOklzc3VlQ29tbWVudDQ0OTU4OTcwMw==","user":{"login":"leculver","id":8496639,"node_id":"MDQ6VXNlcjg0OTY2Mzk=","avatar_url":"https://avatars1.githubusercontent.com/u/8496639?v=4","gravatar_id":"","url":"https://api.github.com/users/leculver","html_url":"https://github.com/leculver","followers_url":"https://api.github.com/users/leculver/followers","following_url":"https://api.github.com/users/leculver/following{/other_user}","gists_url":"https://api.github.com/users/leculver/gists{/gist_id}","starred_url":"https://api.github.com/users/leculver/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/leculver/subscriptions","organizations_url":"https://api.github.com/users/leculver/orgs","repos_url":"https://api.github.com/users/leculver/repos","events_url":"https://api.github.com/users/leculver/events{/privacy}","received_events_url":"https://api.github.com/users/leculver/received_events","type":"User","site_admin":false},"created_at":"2018-12-22T18:32:44Z","updated_at":"2018-12-22T18:32:44Z","author_association":"CONTRIBUTOR","body":"Sorry for the very long delay in responding.  I think this is more of something that should be done by the consumer of ClrMD.  I try to keep ClrMD down to just \"building blocks\", giving you the functionality to implement something like what you are describing, instead of having every small algorithm like that in ClrMD itself.\r\n\r\n(Though if this is something you find impossible to implement on top of ClrMD, please let me know.)"}}
{"actor":{"display_login":"leculver"}}