Pprof: Difficulty profiling with plugins

Hello,

We have an architecture that uses plugins for all functionality.
Plugins are loaded dynamically at runtime from a set of .so files that implement a common interface.

This is split into 2 core types, managers and modules.

Managers and Modules are both loaded by a ‘Root Manager’, modules are then assigned to the appropriate manager once loaded.

The sub-manager then initialises the module, which in turn creates its’ own go-routines for threaded processing (using wait groups).

We have the communication working effectively between the threads and this is no issue.

The issue I am having is that even when using plugins in this way (plugin.open) and then performing functions I am unable to profile this activity even when using

	c := make(chan os.Signal, 1)
	signal.Notify(c)

Is there any way to profile this behaviour? Or will we have to implement profiling within the modules individually?

Any tips or pointers would be greatly appreciated. Thanks

I have found an intermediary workaround, instead using github.com/pkg/profile with the TraceProfile - which successfully traces calls to goroutines and maps them accordingly.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.