14 ms·
I haven't tried deploying a unikernel in production yet - I've been mostly using/debugging only OCaml code on Linux in production - but it should be possible to
by edwintorok 11y ago
I haven't tried deploying a unikernel in production yet - I've been mostly using/debugging only OCaml code on Linux in production - but it should be possible to implement the kind of logging you describe.
For example I've seen a project that would collect&dump its log ring-buffer when an exception was encountered in a unikernel, or one that collects very detailed profiling information from a unikernel.
It would be nice to have some kind of a "shell" to inspect details about the application when something goes wrong, but that applies equally to non-unikernel applications.
The difference is that with unikernels the debugging tool would be provided as a library, whereas with traditional applications debugging is provided as a language-independent OS tool.
- nulltype 11y agoI use Go on App Engine and have never been able to SSH or GDB those machines. Nevertheless, I am still able to debug issues in my app. I admit that debugging is easier on platforms where you get more control.
- talex5 11y agoJust to add some links for those (I assume these are the ones you mean): Dumping the debug-level log ring-buffer on exception: http://lists.xenproject.org/archives/html/mirageos-devel/2016-01/msg00027.html http://lists.xenproject.org/archives/html/mirageos-devel/201... Detailed profiling (interactive JavaScript viewer for thread interactions): https://mirage.io/wiki/profiling https://mirage.io/wiki/profiling