# Memory dump of a dotnet app hosted in Kubernetes

**URL:** <https://community.dynatrace.com/t/memory-dump-of-a-dotnet-app-hosted-in-kubernetes/41044>\
**Category:** Open Q&A\
**Tags:** memory-dump, dotnet\
**Created:** [August 4, 2023, 11:23am UTC](https://community.dynatrace.com/t/memory-dump-of-a-dotnet-app-hosted-in-kubernetes/41044 "2023-08-04T11:23:45Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![aszymanski](https://avatars.discourse-cdn.com/v4/letter/a/e36b37/32.png) [@aszymanski](https://community.dynatrace.com/u/aszymanski)\
**Post date:** [August 4, 2023, 11:23am UTC](https://community.dynatrace.com/t/memory-dump-of-a-dotnet-app-hosted-in-kubernetes/41044/1 "2023-08-04T11:23:45Z")

</div>

We triggerd memory dump file of dotnet application hosted in kubernetes. The container is linux based.  
As a result we have dotnet.core file which can’t be opened via Visual Studio or PerfView.

Visual Studio throws  
“The file is not a valid Managed Linux Core Dump (Specified cast is not valid)”

PerfView throws  
“HeapDump Error: Unable to open process dump. HeapDump only supports converting Windows process dumps.”

The question is how this file is generated and how to open/analyze it?

---

<div class="post-metadata">

**Author:** ![radek\_jasinski](https://dub1.discourse-cdn.com/dynatrace/user_avatar/community.dynatrace.com/radek_jasinski/32/10432_2.png) [@radek\_jasinski](https://community.dynatrace.com/u/radek_jasinski)\
**Post date:** [August 7, 2023, 6:19am UTC](https://community.dynatrace.com/t/memory-dump-of-a-dotnet-app-hosted-in-kubernetes/41044/2 "2023-08-07T06:19:36Z")

</div>

Hi&nbsp;[@aszymanski](https://community.dynatrace.com/user/56967)

Dynatrace doesn’t explicitly say what mechanism it uses to collect the memory dump. However, I suspect it is PerfCollect or they obtain it using .NET CLI tools. The dump should be able to be opened with PerfView or Visual Studio (which the documentation also indicates).

I suggest setting up a ticket with support, as there may be a problem with the correct DT configuration on your environment.

Regards,

Radek

---

<div class="post-metadata">

**Author:** ![Gurpreet\_Juttla](https://avatars.discourse-cdn.com/v4/letter/g/90db22/32.png) [@Gurpreet\_Juttla](https://community.dynatrace.com/u/Gurpreet_Juttla)\
**Post date:** [August 22, 2023, 10:21am UTC](https://community.dynatrace.com/t/memory-dump-of-a-dotnet-app-hosted-in-kubernetes/41044/3 "2023-08-22T10:21:29Z")

</div>

**Update 2026-07-22**

This has limitation has been resolved with OneAgent 1.345.

Memory dumps for .NET applications on Linux now use the [.NET diagnostic IPC](https://github.com/dotnet/diagnostics/blob/main/documentation/design-docs/ipc-protocol.md) port (requires .NET Core 3.1+), producing standard .dmp files instead of core dumps. They can be opened and analyzed directly in Visual Studio and other .NET-aware diagnostic tools. Classic core files are produced as a backup in case of failure. If you need to enable classic core dumps, reach out to Dynatrace support.

----

Hi

When triggering a memory dump via the Dynatrace UI then the OneAgent’s internal mechanism to create memory dumps is used (`oneagentdumpproc`). This works fine for .NET dumps on Windows, but unfortunately not for Linux memory dumps. There are improvements in this area planned, however I cannot give an ETA.

If you want to analyze .NET memory dumps with VS you have to capture those memory dumps with either createdump [1] (it is shipped with every .NET runtime installation) or dotnet-dump [2].

[1] [runtime/docs/design/coreclr/botr/xplat-minidump-generation.md at main · dotnet/runtime · GitHub](https://github.com/dotnet/runtime/blob/main/docs/design/coreclr/botr/xplat-minidump-generation.md)

[2] [dotnet-dump diagnostic tool - .NET CLI - .NET | Microsoft Learn](https://learn.microsoft.com/en-us/dotnet/core/diagnostics/dotnet-dump)

Best regards,  
Gurpreet

---

<div class="post-metadata">

**Author:** ![paum](https://avatars.discourse-cdn.com/v4/letter/p/dc4da7/32.png) [@paum](https://community.dynatrace.com/u/paum)\
**Post date:** [May 14, 2024, 2:15pm UTC](https://community.dynatrace.com/t/memory-dump-of-a-dotnet-app-hosted-in-kubernetes/41044/4 "2024-05-14T14:15:22Z")

</div>

Wow. Thanks for this!

I was going through the docs and we basically followed everything there, however we couldn’t get the correct dump file.

I wonder why this is not mentioned in the docs as a MAJOR limitation. 🤔&nbsp;

> **[Analyze memory dumps in Profiling & Optimization](https://docs.dynatrace.com/docs/observe/application-observability/profiling-and-optimization/memory-dump-analysis)**
>
> Learn how Dynatrace enables you to trigger, download and analyze memory dumps for Java and Node.js.

---

<div class="post-metadata">

**Author:** ![calfanonerey](https://avatars.discourse-cdn.com/v4/letter/c/e19b73/32.png) [@calfanonerey](https://community.dynatrace.com/u/calfanonerey)\
**Post date:** [August 6, 2025, 3:50pm UTC](https://community.dynatrace.com/t/memory-dump-of-a-dotnet-app-hosted-in-kubernetes/41044/5 "2025-08-06T15:50:28Z")

</div>

Any update on supporting these .NET Linux memory dumps?

---

<div class="post-metadata">

**Author:** ![Gurpreet\_Juttla](https://avatars.discourse-cdn.com/v4/letter/g/90db22/32.png) [@Gurpreet\_Juttla](https://community.dynatrace.com/u/Gurpreet_Juttla)\
**Post date:** [July 22, 2026, 9:41am UTC](https://community.dynatrace.com/t/memory-dump-of-a-dotnet-app-hosted-in-kubernetes/41044/6 "2026-07-22T09:41:04Z")

</div>

Updated the main post. This limitation has been resolved with the upcoming OneAgent 1.345 release.
