{"action":"created","issue":{"url":"https://api.github.com/repos/dotnet/coreclr/issues/18827","repository_url":"https://api.github.com/repos/dotnet/coreclr","labels_url":"https://api.github.com/repos/dotnet/coreclr/issues/18827/labels{/name}","comments_url":"https://api.github.com/repos/dotnet/coreclr/issues/18827/comments","events_url":"https://api.github.com/repos/dotnet/coreclr/issues/18827/events","html_url":"https://github.com/dotnet/coreclr/issues/18827","id":339256358,"node_id":"MDU6SXNzdWUzMzkyNTYzNTg=","number":18827,"title":"Debugging Linux Apps - Dump Analysis Clarification","user":{"login":"abbotware","id":2100564,"node_id":"MDQ6VXNlcjIxMDA1NjQ=","avatar_url":"https://avatars2.githubusercontent.com/u/2100564?v=4","gravatar_id":"","url":"https://api.github.com/users/abbotware","html_url":"https://github.com/abbotware","followers_url":"https://api.github.com/users/abbotware/followers","following_url":"https://api.github.com/users/abbotware/following{/other_user}","gists_url":"https://api.github.com/users/abbotware/gists{/gist_id}","starred_url":"https://api.github.com/users/abbotware/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/abbotware/subscriptions","organizations_url":"https://api.github.com/users/abbotware/orgs","repos_url":"https://api.github.com/users/abbotware/repos","events_url":"https://api.github.com/users/abbotware/events{/privacy}","received_events_url":"https://api.github.com/users/abbotware/received_events","type":"User","site_admin":false},"labels":[{"id":196940783,"node_id":"MDU6TGFiZWwxOTY5NDA3ODM=","url":"https://api.github.com/repos/dotnet/coreclr/labels/area-Diagnostics","name":"area-Diagnostics","color":"d4c5f9","default":false},{"id":192802699,"node_id":"MDU6TGFiZWwxOTI4MDI2OTk=","url":"https://api.github.com/repos/dotnet/coreclr/labels/os-linux","name":"os-linux","color":"fef2c0","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":33,"created_at":"2018-07-08T20:46:06Z","updated_at":"2018-07-12T18:29:10Z","closed_at":null,"author_association":"NONE","body":"I have hanging app on linux and was attempting to get take a memory dump... upon reading the docs for memory dump analysis I found nothing talking about mention **hung**, **deadlocks** or **memory leaks**: they are mostly geared to crash analysis.\r\n\r\nthe way i see it there are 2 types of dumps: \r\n1. Crash (created by operating system/debugger event) for crash analysis\r\n2. Live / On Demand (created by user) for memory, lock, hang analysis\r\n\r\nI think this link needs to be updated to at least mention the second category of memory dump analysis is also possible  (and any deviation in steps required)\r\n\r\nhttps://github.com/dotnet/coreclr/blob/master/Documentation/building/debugging-instructions.md\r\n\r\nExample text from above link that should be modified:\r\n\r\n`It is also possible to debug .NET Core crash dumps` (what about hung processes?)\r\n(NOTE: this is not an exhaust list of text that needs to be updated)\r\n\r\nWhat is **CreateDump**?\r\n\r\n`On Linux, there is an utility called **createdump** (see doc) that can be setup to generate core dumps when a managed app throws an unhandled exception or faults.` ?\r\n\r\nThe current wording seems to imply a 'separate utility' - but I can't find it in the (linux/arm) sdk\r\n\r\nAccording to the following links it seems that it might be a seprate util, or part of sos?\r\n\r\n(Command Line Options)?\r\nhttps://github.com/dotnet/coreclr/blob/master/Documentation/botr/xplat-minidump-generation.md\r\n\r\n(SOS Plugin Command?)\r\nhttps://github.com/dotnet/coreclr/blob/master/Documentation/building/debugging-instructions.md\r\n\r\nPlease Clarify the following:\r\n\r\n1. Are dumps only able to be analyzed if they are created via lldb + sos ? \r\n2. What is 'create dump' utility and where is it?  (contradictory docs)\r\n3. Update the above linked docs since they seem have no mention that memory dumps from 'live' processes are supported.\r\n4. a quick how to guide for creating a dump of a live process would be nice if the steps vastly are different from crash dump analysis.\r\n\r\nregarding item 1 - I attempted to create memory dumps using 'gcore' and load them in lldb but this just caused lldb to crash so i posted a bug with lldb and sought guidance on coreclr glitter for more input  \r\n\r\n@karelz - also sent me the links above but I if you read my above notes: I think more clarity is needed to deal with the second class of dumps that I want to analyze on linux/arm hardware.\r\n\r\n\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/dotnet/coreclr/issues/comments/404607078","html_url":"https://github.com/dotnet/coreclr/issues/18827#issuecomment-404607078","issue_url":"https://api.github.com/repos/dotnet/coreclr/issues/18827","id":404607078,"node_id":"MDEyOklzc3VlQ29tbWVudDQwNDYwNzA3OA==","user":{"login":"tmds","id":1025424,"node_id":"MDQ6VXNlcjEwMjU0MjQ=","avatar_url":"https://avatars1.githubusercontent.com/u/1025424?v=4","gravatar_id":"","url":"https://api.github.com/users/tmds","html_url":"https://github.com/tmds","followers_url":"https://api.github.com/users/tmds/followers","following_url":"https://api.github.com/users/tmds/following{/other_user}","gists_url":"https://api.github.com/users/tmds/gists{/gist_id}","starred_url":"https://api.github.com/users/tmds/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tmds/subscriptions","organizations_url":"https://api.github.com/users/tmds/orgs","repos_url":"https://api.github.com/users/tmds/repos","events_url":"https://api.github.com/users/tmds/events{/privacy}","received_events_url":"https://api.github.com/users/tmds/received_events","type":"User","site_admin":false},"created_at":"2018-07-12T18:29:09Z","updated_at":"2018-07-12T18:29:09Z","author_association":"MEMBER","body":"@wfurt @mikem8361 if you attach VS to a .NET Core process running on Linux. Can it create minidumps that VS can understand and diff to debug memory leaks (https://msdn.microsoft.com/en-us/library/dn342825.aspx)? Or does this also not work due to the ELF format?"}}
{"actor":{"display_login":"tmds"}}