scout_apm v1.0.7 API Reference
Modules
Documentation for ScoutApm.
A centralized place to log & note any agent misconfigurations, interesting occurances, or other things that'd normally be log messages.
Public interface to configuration settings. Reads from several configuration sources, giving each an opportunity to respond with its value before trying the next.
Takes "raw" values from various config sources, and turns them into the requested format.
Always says it contains key, and the value is always nil
Public API for easily adding Context to a running request.
Internal representation of a Context. As a user of ScoutApm, you likely will not need this module
Stores a single or multiple runs of a background job. Both metadata ("queue" and "name"), and metrics ("total time", "metrics")
Internal to the ScoutAPM agent.
Store a single metric, that may contain aggregated data around many calls to that metric. Uniquely identified by type / name / desc / scope
A record of a single trace.
Logger for all ScoutApm modules.
A way to absorb & combine metrics into a single set, keeping track of min/max/count, etc.
Converts a list of ScoutApm.Internal.Context types into an appropriate data structure to serialize via Jason.encode!
The payload structure for a single SlowTransaction / Trace.
Internal to ScoutApm agent.
A capped set type that has a few rules on inclusion.
Ths module contains functions to create transactions and time the execution of code. It's used to add instrumentation to an Elixir app.
Stores information about a single request, as the request is happening. Attempts to do minimal processing. Its job is only to collect up information. Once the request is finished, the last layer will be stopped - and we can send this whole data structure off to be processed.
A simple module to log when a watched process fails. Only works to watch module based workers currently, not arbitrary pids. See usage in application.ex
Mix Tasks
Checks application configuration and core agent communication