Package-level declarations
Types
An active measurement is something a session might potentially have. Compared to FinishedMeasurement, the active measurement has mutable fields for updating the runs and meter states. Use the routine 'finish' to produce a FinishedMeasurement.
Entries for active data sources, i.e. those we want to focus on in the measurement session.
Nodes consist of functional units (NodeSpecs.units) Some units can be measured with a meter. This structure represents such an association.
Description of a benchmark suite. Consists of multiple cases.
Runs a benchmark.
Clear closed / all sessions.
Defines an event for configuring the measurement. See https://tech.utugit.fi/soft/tools/power/doc/manual/usage/intro/
Defines an event for configuring a meter. See https://tech.utugit.fi/soft/tools/power/doc/manual/usage/intro/
Defines an event for configuring a meter. See https://tech.utugit.fi/soft/tools/power/doc/manual/usage/intro/
Defines an event for configuring the resource filters See https://tech.utugit.fi/soft/tools/power/doc/manual/usage/data/
Represents a coordinate pair (e.g. for scatter graphs).
Represents a data source for the analysis of measurements.
Delete one / all log directories in the instance.
Application wide configuration flags.
Plans for calculating generic statistics.
Application wide configuration.
Represents the input for processed data.
Sent periodically by the server. If something new has occurred, status=Event, otherwise status=Timeout
An event signaling that the PowerGoblin instance executed a benchmark.
An event signaling that the PowerGoblin instance was reconfigured (discovery of new meters)
An event signaling that a measurement session was closed on this instance.
A wrapper event signaling that a session related event was executed (measurement / run was started / stopped, meter set on / off).
An event signaling that a new measurement session was started on this instance.
Summary data structure for the application instance. Contains the mutable features such as session and meter names, uptime, addresses, file count, in addition to the immutable specifications.
Immutable specifications for the instance. Used for calculating the instance id.
An event signaling that the PowerGoblin instance was started.
An event signaling that the PowerGoblin instance was stopped.
Summary data structure for the application instance. Contains the mutable features such as session and meter names, uptime, addresses, file count, in addition to the immutable specifications.
A simple structure for enumerating interfaces.
Represents a log file event.
Represents a collection of scatter plots for a session. Since different sources may have been used for different measurements, we first determine the measurement, then the source, then runs.
A structure for holding
Measurement represents a single test case that can be run multiple times for further statistical analysis. The runs are expected to behave in a more or less identical way. Statistical methods can be used for determining reasonable range of values for power, duration etc.
Defines a message event.
Events generated by the power meters (handlers) See https://tech.utugit.fi/soft/tools/power/doc/manual/usage/intro/
Defines an event for reporting a failed measurement event
Adds a meter to a session.
A brief entry for listing meter sources in the instance summary.
Removes a meter from a session.
Sets the meters in a session. Removed ones appear as dummies.
Plans for calculating meter statistics.
Toggle the given meters on/off.
Generic MQTT message with text content.
The base class for MQTT message classes to be serialized
MQTT message entry for the message log. Basically a bridge object between MQTTMessages and message log.
Clear the log associated with a node/agent.
Subtype of commands that are associated with a specific node.
Enqueues an agent command.
Queries and clears the commands enqueued for a node/agent.
Appends a message from an agent/node.
Registers an agent/node.
Removes the agent/node.
Updates the status of an agent/node.
A snapshot of the live node state.
Global application configuration for plot generation.
A structure for holding
Reconfigure instance's meters.
Description of a benchmark case. The id is just a relative file path and cannot contain '../'.
Represents a document section in the report.
Represents the template document in a more refined form.
Defines a report template for a session.
Defines an event describing resource consumption.
Defines an event describing an ad-hoc resource consumption.
Represents a logged resource source.
Events generated by the resource sources. See https://tech.utugit.fi/soft/tools/power/doc/manual/usage/intro/
Represents a single run and its data
Run represents a single test run of a test case. The runs are expected to behave in a more or less identical way. The runs contain a list of summaries for each associated power meter.
Scattergraph \__ MeasurementScatterGraph (id, name, sources) \__ SourceScatterGraph (source, runs) \__ RunScatterGraph (run, coordinates) \__ Coordinate (x, y)
Send a MQTT message.
A simple structure for enumerating address-port-interface triples.
Close the session.
Subtype of commands that are associated with a specific session.
Session configuration.
A brief entry for listing sessions in the instance summary.
This class is the base of a class hierarchy that defines events occurring in the measurement session. All events carry a timestamp and are associated with some session.
Sends an email message with session summary.
Live session data contains the rapidly changing session data that can be serialized as JSON messages for communicating with different frontends via an external API.
Represents a logged session.
Represents a single log file in the logged session.
Merge two open sessions. The otherSession needs to be chronologically later session (both start and stop times) after the first's stop time. Both sessions need to be closed.
Reconstruct the session.
Remove the session.
Reset the session (measurements, counters).
Restore the session from disk.
Start a new session.
A structure for holding all statistics for a session.
Store the session to disk.
Summary of a finished session. Contains the necessary data for later restoring the session from a stored session dump file.
Close the session.
Defines an event for configuring the session See https://tech.utugit.fi/soft/tools/power/doc/manual/usage/intro/
Configure the number of simulated meters in the instance.
Defines an event describing a time synchronization point. The format for remote time is date +%s%N (unix cli utility)
Shut down the instance.
Represents a single data source and all its runs in a measurement
Describes the data sources and the associated statistics variable.
Classification of variables.
Helper for calculating min / max / average / standard deviation.
Plans for calculating statistics.
Metadata for a statistics variable.
A brief entry for listing subsystems in the instance summary.
Run a diagnostic system application. The command represents any kind of command and its arguments. It's up to the accepting implementation to interpret and validate the commands.
Structure representing an asynchronous task.
The status of the task.
Defines a trigger event indicating a status change.
Triggers are special events that update measurement/run counters, report the system state etc.