When writing a new worker, or dealing with an older worker, please consider adding a Report method.
// Reporter defines an interface for extracting human-relevant information
// from a worker.
type Reporter interface {
	// Report returns a map describing the state of the receiver. It is expected
	// to be goroutine-safe.
	//
	// It is polite and helpful to use the Key* constants and conventions defined
	// and described in this package, where appropriate, but that's for the
	// convenience of the humans that read the reports; we don't and shouldn't
	// have any code that depends on particular Report formats.
	Report() map[string]interface{}
}
If the worker supports a Report method, it will be added to the juju_engine_report introspection method.
The method should be:
- fast
- goroutine safe
See the apiaddresser for an example.