Are there any system logs available to confirm why "no snapshots collected" in linux?
Im using a system based on Linux OS to run dotnet core based application. While running dottrace command on that application, snapshots are not generated. I can only see some messages stating, "No snapshots collected". To understand further I had a look into journalctl loag, but I could not find any logs specific to dottrace. Please help/ guide me to figure, where these dottrace logs are generating in linux system.
Please sign in to leave a comment.
Hi!
If I got it right we are talking about dotTrace clt. dotTrace clt has separate option for taking logs but they usually used analyze issues on our side. In other words I don't think logs will help you.
If you want to see which steps dotTrace has done during profiling process and probably deduce what went wrong you could turn `--service-output=on`. To see what output service messages dotTrace have and their meaning see stdout messages description in help `dottrace help service-messages`.
i have tried --service-output=on already, but that was not giving me required information. Here the problem is, due to some internal issue, Snapshots are not creating for the profiling session. I can see all the other logs like, "profile started etc, but last statment is "No snapshots created". Looks like something happened before saving the snapshot, but those internal error logs of dottrace are not visible to me. Since the hardware which Im using is customized Linux environment with lot of restrictions, it might be useful for me to rectify, if I can see the logs and causes for not saving the snapshot. My intuition, is might be due to some IPTABLES configuration. But I could not find any logs specific to it.
Have you seen ##dotTrace["connected"], ##dotTrace["started"], ##dotTrace["snapshot-saved"], ##dotTrace["disconnected"] service messages? If you've seen connected - that means profiler is connected for example. Usually if dottrace gets error (for example cannot save snapshot), it prints an error to console (in red). If you don't see any of them it looks like there is really something unusual happened. But on which state? While connecting or maybe saving? That's why I mentioned --service-output before.
Don't you use profiling api? If not you could also control dottrace clt using input service messages. For example to control through stdin specify `--service-input=stdin`. As soon as profiler "connected" you can type ##dotTrace["start"] command. As a response you receive "started" output message. Then you could try ##dotTrace["get-snapshot"] command, etc. So you will know what doesn't work in your case.
Of course you can enable debug logs and write them into a separate file `--debug-logging --log-file=<path_to_log_file>`. If it would be convenient for you, you could upload such log file to https://uploads.jetbrains.com/ and probably we could help you.