DaggerWebDash Types
Logging Event Types
DaggerWebDash.D3Renderer — TypeD3Renderer(port::Int, port_range::UnitRange; seek_store=nothing) -> D3RendererConstructs 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 — TypeTableStorageLogWindow-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 — TypeProfileMetricsTracks compute profile traces.