DaggerWebDash Types
Logging Event Types
DaggerWebDash.D3Renderer
— TypeD3Renderer(port::Int, port_range::UnitRange; seek_store=nothing) -> D3Renderer
Constructs a D3Renderer
, which is a TimespanLogging aggregator which renders the logs over HTTP using the d3.js library. port
is the port that will be serving the HTTP website. port_range
specifies a range of ports that will be used to listen for connections from other Dagger workers. seek_store
, if specified, is a Tables.jl-compatible object that logs will be written to and read from. This table can be written to disk and then re-read later for offline log analysis.
DaggerWebDash.TableStorage
— TypeTableStorage
LogWindow-compatible aggregator which stores logs in a Tables.jl-compatible sink.
Using a TableStorage
is reasonably simple:
ml = TimespanLogging.MultiEventLog()
... # Add some events
lw = TimespanLogging.LogWindow(5*10^9, :core)
# Create a DataFrame with one Any[] for each event
df = DataFrame([key=>[] for key in keys(ml.consumers)]...)
# Create the TableStorage and register its creation handler
ts = DaggerWebDash.TableStorage(df)
push!(lw.creation_handlers, ts)
ml.aggregators[:lw] = lw
# Logs will now be saved into `df` automatically, and packages like
# DaggerWebDash.jl will automatically use it to retrieve subsets of the logs.
DaggerWebDash.ProfileMetrics
— TypeProfileMetrics
Tracks compute profile traces.