Safe Haskell | None |
---|---|
Language | Haskell98 |
Keeps the tracing API calls separate from the Tracer implementation,
which allows us to avoid a nasty import cycle between tracing and
the messaging primitives that rely on it, and also between the node
controller (which requires access to the tracing related elements of
our RemoteTable) and the Debug module, which requires forkProcess
.
This module is also used by the management agent, which relies on the
tracing infrastructure's messaging fabric.
- traceLog :: String -> Process ()
- traceLogFmt :: String -> [TraceArg] -> Process ()
- traceMessage :: Serializable m => m -> Process ()
- defaultTraceFlags :: TraceFlags
- enableTrace :: ProcessId -> Process ()
- enableTraceAsync :: ProcessId -> Process ()
- disableTrace :: Process ()
- disableTraceAsync :: Process ()
- getTraceFlags :: Process TraceFlags
- setTraceFlags :: TraceFlags -> Process ()
- setTraceFlagsAsync :: TraceFlags -> Process ()
- traceOnly :: Traceable a => [a] -> Maybe TraceSubject
- traceOn :: Maybe TraceSubject
- traceOff :: Maybe TraceSubject
- withLocalTracer :: (MxEventBus -> Process ()) -> Process ()
- withRegisteredTracer :: (ProcessId -> Process a) -> Process a
Sending Trace Data
traceLog :: String -> Process () Source #
Send a log message to the internal tracing facility. If tracing is enabled, this will create a custom trace log event.
traceLogFmt :: String -> [TraceArg] -> Process () Source #
Send a log message to the internal tracing facility, using the given
list of printable TraceArg
s interspersed with the preceding delimiter.
traceMessage :: Serializable m => m -> Process () Source #
Send an arbitrary Message
to the tracer process.
Configuring A Tracer
enableTrace :: ProcessId -> Process () Source #
Enable tracing to the supplied process and wait for a TraceOk
response from the trace coordinator process.
enableTraceAsync :: ProcessId -> Process () Source #
Enable tracing to the supplied process.
disableTrace :: Process () Source #
Disable the currently configured trace and wait for a TraceOk
response from the trace coordinator process.
disableTraceAsync :: Process () Source #
Disable the currently configured trace.
setTraceFlags :: TraceFlags -> Process () Source #
Set the given flags for the current tracer and wait for a TraceOk
response from the trace coordinator process.
setTraceFlagsAsync :: TraceFlags -> Process () Source #
Set the given flags for the current tracer.
traceOnly :: Traceable a => [a] -> Maybe TraceSubject Source #
Turn tracing for for a subset of trace targets.
traceOn :: Maybe TraceSubject Source #
Trace all targets.
traceOff :: Maybe TraceSubject Source #
Trace no targets.
withLocalTracer :: (MxEventBus -> Process ()) -> Process () Source #