Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

No CallStacks for .NET Core Applications #12

Open
shortspider opened this issue Oct 26, 2017 · 7 comments
Open

No CallStacks for .NET Core Applications #12

shortspider opened this issue Oct 26, 2017 · 7 comments

Comments

@shortspider
Copy link

Hi,

If I run LiveStacks against a .NET Core app I don't get any callstacks. If the dotnet process has a pid of 11108 and I run .\LiveStacks.exe -p 11108 I get:

Ctrl+C pressed, stopping...
2:39:52 PM
1769 [UNKNOWN 11108]
7FFD72360527
7FFD723604AB
7FFDD1E62D33
7FFDD1DACA6F
7FFDD1E1FA87
7FFDD1D7FBF9
7FFDD1D365B9
7FFDD1E1EBAE
7FFDECA1E8B9
7FFDECA1EE44
7FFDF8F79B05
7FFDF8F7F42B
7FFDF8F7E819
7FFDF8F7CC8D
7FF77BF29ABC
7FF77BF2E099
7FFE236D2774
7FFE255A0D51

379 [UNKNOWN 11108]
7FFD7236051E
7FFD723604AB
7FFDD1E62D33
7FFDD1DACA6F
7FFDD1E1FA87
7FFDD1D7FBF9
7FFDD1D365B9
7FFDD1E1EBAE
7FFDECA1E8B9
7FFDECA1EE44
7FFDF8F79B05
7FFDF8F7F42B
7FFDF8F7E819
7FFDF8F7CC8D
7FF77BF29ABC
7FF77BF2E099
7FFE236D2774
7FFE255A0D51

How can I get the correct callstacks? I'm not sure how to force the symbols to be loaded, the readme says that CLRMD should be doing that for me right?

@goldshtn
Copy link
Owner

Thanks for the report. LiveStacks should resolve the symbols automatically. Can you please confirm that you're using the right bitness of LiveStacks, i.e. 32-bit LiveStacks for 32-bit target or 64-bit LiveStacks for 64-bit target? Also, if you could provide a bit more information about your environment: OS, Visual Studio, .NET Core version, etc.

@shortspider
Copy link
Author

@goldshtn sorry for the late response.

My machine is 64 bit and the .NET Core app is configured for Any CPU and LiveStacks is compiled for x64.

OS is Windows 10 Pro version 1703, OS build 15063.674.
Visual Studio is version 15.4.1.
LiveStacks compiled against .NET 4.6.
.NET Core application compiled against 2.0.0.

Should I be compiling LiveStacks against .NET Core? I don't see that configuration in VS.

@goldshtn
Copy link
Owner

goldshtn commented Nov 3, 2017 via email

@shortspider
Copy link
Author

Sorry should have mentioned that “Prefer 32-bit” was unchecked. The application is 64 bit.

@shortspider
Copy link
Author

@goldshtn Hey any updates on this? Is there anything I can do to help solve this? Is anyone else having this issue?

@goldshtn
Copy link
Owner

I don't have any updates because I haven't reproduced the issue. Does this happen with any .NET Core app, or just one specific app? I'm a bit worried about the "UNKNOWN" marker as well, it should be the process name. Is it possible that the application has exited by the time you hit Ctrl+C?

@shortspider
Copy link
Author

@goldshtn it does seem to happen with any core app I try. I also had someone else try in production and had the same results.

I tested again this morning with the following small program:

using System;

namespace TestProject.Core
{
    static class Program
    {
        public static void Main(string[] args)
        {
            var b = true;
            while (true)
            {
                if (b)
                {
                    MethodA();
                }
                else
                {
                    MethodB();
                }
                b = !b;
            }
        }

        static void MethodA()
        {
            Console.WriteLine("Running Method A");
            for (int i = 0; i < 100000; i++)
            {
                
            }
        }

        static void MethodB()
        {
            Console.WriteLine("Running Method B");
            for (int i = 0; i < 100000; i++)
            {
                
            }
        }
    }
}

So the program basically maxes out a core on my machine and never exits. I made sure that it built for x64 (not Any CPU and prefer 32 bit was also unchecked just for kicks). I rebuilt LiveStacks as well, making sure I chose the x64 build.

If I take the same small program and build and run it against the full framework LiveStacks works beautify.

Is there any other test I can do for you? Any other info I can provide?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants