Liking cljdoc? Tell your friends :D

wagoe.observability.metrics.core

Core metrics functions and utilities.

This namespace provides pure functions and higher-level abstractions over the metrics protocols, making it easier for feature modules to collect metrics without dealing with protocol details directly.

Core metrics functions and utilities.

This namespace provides pure functions and higher-level abstractions over
the metrics protocols, making it easier for feature modules to collect
metrics without dealing with protocol details directly.
raw docstring

build-metric-nameclj

(build-metric-name namespace subsystem name)

Builds a hierarchical metric name from components.

Args: namespace - Metric namespace subsystem - Metric subsystem (optional) name - Base metric name

Returns: Fully qualified metric name

Builds a hierarchical metric name from components.

Args:
  namespace   - Metric namespace
  subsystem   - Metric subsystem (optional)
  name        - Base metric name

Returns:
  Fully qualified metric name
sourceraw docstring

count-eventsclj

(count-events emitter event-type)
(count-events emitter event-type tags)

Convenience function to count application events.

Args: emitter - IMetricsEmitter instance event-type - Type of event tags - Optional additional tags

Returns: nil

Convenience function to count application events.

Args:
  emitter    - IMetricsEmitter instance
  event-type - Type of event
  tags       - Optional additional tags

Returns:
  nil
sourceraw docstring

increment-counterclj

(increment-counter emitter name)
(increment-counter emitter name tags)

Increments a counter metric by 1.

Args: emitter - IMetricsEmitter instance name - Counter name tags - Optional tags map

Returns: nil

Increments a counter metric by 1.

Args:
  emitter - IMetricsEmitter instance
  name    - Counter name
  tags    - Optional tags map

Returns:
  nil
sourceraw docstring

increment-counter-byclj

(increment-counter-by emitter name amount)
(increment-counter-by emitter name amount tags)

Increments a counter metric by a specific amount.

Args: emitter - IMetricsEmitter instance name - Counter name amount - Amount to increment by tags - Optional tags map

Returns: nil

Increments a counter metric by a specific amount.

Args:
  emitter - IMetricsEmitter instance
  name    - Counter name
  amount  - Amount to increment by
  tags    - Optional tags map

Returns:
  nil
sourceraw docstring

merge-tagsclj

(merge-tags & tag-maps)

Merges multiple tag maps, with later maps taking precedence.

Args: tag-maps - Variable number of tag maps

Returns: Merged tags map

Merges multiple tag maps, with later maps taking precedence.

Args:
  tag-maps - Variable number of tag maps

Returns:
  Merged tags map
sourceraw docstring

normalize-metric-nameclj

(normalize-metric-name name)

Normalizes a metric name according to common conventions.

Args: name - Metric name string

Returns: Normalized metric name string

Normalizes a metric name according to common conventions.

Args:
  name - Metric name string

Returns:
  Normalized metric name string
sourceraw docstring

observe-histogramclj

(observe-histogram emitter name value)
(observe-histogram emitter name value tags)

Records an observation in a histogram.

Args: emitter - IMetricsEmitter instance name - Histogram name value - Observed value tags - Optional tags map

Returns: nil

Records an observation in a histogram.

Args:
  emitter - IMetricsEmitter instance
  name    - Histogram name
  value   - Observed value
  tags    - Optional tags map

Returns:
  nil
sourceraw docstring

record-timerclj

(record-timer emitter name duration)
(record-timer emitter name duration tags)

Records a timing measurement using histogram.

Args: emitter - IMetricsEmitter instance name - Timer name duration - Duration value tags - Optional tags map

Returns: nil

Records a timing measurement using histogram.

Args:
  emitter  - IMetricsEmitter instance
  name     - Timer name
  duration - Duration value
  tags     - Optional tags map

Returns:
  nil
sourceraw docstring

sanitize-tagsclj

(sanitize-tags tags)

Sanitizes metric tags by removing invalid characters.

Args: tags - Map of tag key-value pairs

Returns: Sanitized tags map

Sanitizes metric tags by removing invalid characters.

Args:
  tags - Map of tag key-value pairs

Returns:
  Sanitized tags map
sourceraw docstring

set-gauge-valueclj

(set-gauge-value emitter name value)
(set-gauge-value emitter name value tags)

Sets a gauge to a specific value.

Args: emitter - IMetricsEmitter instance name - Gauge name value - Gauge value tags - Optional tags map

Returns: nil

Sets a gauge to a specific value.

Args:
  emitter - IMetricsEmitter instance
  name    - Gauge name
  value   - Gauge value
  tags    - Optional tags map

Returns:
  nil
sourceraw docstring

time-operationclj

(time-operation emitter name f)
(time-operation emitter name tags f)

Times an operation using histogram timing.

Args: emitter - IMetricsEmitter instance name - Timer name tags - Optional tags map f - Function to time

Returns: Result of function f

Times an operation using histogram timing.

Args:
  emitter - IMetricsEmitter instance
  name    - Timer name
  tags    - Optional tags map
  f       - Function to time

Returns:
  Result of function f
sourceraw docstring

time-with-histogramclj

(time-with-histogram emitter name f)
(time-with-histogram emitter name tags f)

Times an operation and records the duration in a histogram.

Args: emitter - IMetricsEmitter instance name - Histogram name tags - Optional tags map f - Function to time

Returns: Result of function f

Times an operation and records the duration in a histogram.

Args:
  emitter - IMetricsEmitter instance
  name    - Histogram name
  tags    - Optional tags map
  f       - Function to time

Returns:
  Result of function f
sourceraw docstring

track-active-countclj

(track-active-count emitter name value)
(track-active-count emitter name value tags)

Tracks active count by setting gauge values.

Args: emitter - IMetricsEmitter instance name - Gauge name value - Current count value tags - Optional tags map

Returns: nil

Tracks active count by setting gauge values.

Args:
  emitter - IMetricsEmitter instance
  name    - Gauge name
  value   - Current count value
  tags    - Optional tags map

Returns:
  nil
sourceraw docstring

track-api-usageclj

(track-api-usage emitter endpoint method status duration)

Tracks API endpoint usage.

Args: emitter - IMetricsEmitter instance endpoint - API endpoint method - HTTP method status - Response status duration - Request duration in ms

Returns: nil

Tracks API endpoint usage.

Args:
  emitter  - IMetricsEmitter instance
  endpoint - API endpoint
  method   - HTTP method
  status   - Response status
  duration - Request duration in ms

Returns:
  nil
sourceraw docstring

track-business-kpiclj

(track-business-kpi emitter kpi value)
(track-business-kpi emitter kpi value tags)

Tracks key performance indicators.

Args: emitter - IMetricsEmitter instance kpi - KPI name value - KPI value tags - Optional additional tags

Returns: nil

Tracks key performance indicators.

Args:
  emitter - IMetricsEmitter instance
  kpi     - KPI name
  value   - KPI value
  tags    - Optional additional tags

Returns:
  nil
sourceraw docstring

track-database-operationsclj

(track-database-operations emitter operation table duration success)

Tracks database operation metrics.

Args: emitter - IMetricsEmitter instance operation - Database operation type table - Database table/collection duration - Operation duration in ms success - Whether operation was successful

Returns: nil

Tracks database operation metrics.

Args:
  emitter   - IMetricsEmitter instance
  operation - Database operation type
  table     - Database table/collection
  duration  - Operation duration in ms
  success   - Whether operation was successful

Returns:
  nil
sourceraw docstring

track-external-service-callsclj

(track-external-service-calls emitter service-name operation duration success)

Tracks external service call metrics.

Args: emitter - IMetricsEmitter instance service-name - Name of external service operation - Operation/endpoint called duration - Call duration in ms success - Whether call was successful

Returns: nil

Tracks external service call metrics.

Args:
  emitter      - IMetricsEmitter instance
  service-name - Name of external service
  operation    - Operation/endpoint called
  duration     - Call duration in ms
  success      - Whether call was successful

Returns:
  nil
sourceraw docstring

track-health-checkclj

(track-health-check emitter component status duration)

Tracks health check results.

Args: emitter - IMetricsEmitter instance component - Component being checked status - Health status (healthy, unhealthy, degraded) duration - Check duration in ms

Returns: nil

Tracks health check results.

Args:
  emitter   - IMetricsEmitter instance
  component - Component being checked
  status    - Health status (healthy, unhealthy, degraded)
  duration  - Check duration in ms

Returns:
  nil
sourceraw docstring

track-request-durationclj

(track-request-duration emitter method path status duration)

Tracks HTTP request durations.

Args: emitter - IMetricsEmitter instance method - HTTP method path - Request path status - Response status duration - Duration in milliseconds

Returns: nil

Tracks HTTP request durations.

Args:
  emitter    - IMetricsEmitter instance
  method     - HTTP method
  path       - Request path
  status     - Response status
  duration   - Duration in milliseconds

Returns:
  nil
sourceraw docstring

track-resource-usageclj

(track-resource-usage emitter resource-type value)
(track-resource-usage emitter resource-type value tags)

Tracks resource usage metrics.

Args: emitter - IMetricsEmitter instance resource-type - Type of resource (memory, cpu, etc.) value - Current usage value tags - Optional additional tags

Returns: nil

Tracks resource usage metrics.

Args:
  emitter       - IMetricsEmitter instance
  resource-type - Type of resource (memory, cpu, etc.)
  value         - Current usage value
  tags          - Optional additional tags

Returns:
  nil
sourceraw docstring

track-samplingclj

(track-sampling sample-rate f)

Tracks metrics with sampling rate.

Args: sample-rate - Sampling rate (0.0 to 1.0) f - Function that performs metric tracking

Returns: Result of function f if sample passes, nil otherwise

Tracks metrics with sampling rate.

Args:
  sample-rate - Sampling rate (0.0 to 1.0)
  f           - Function that performs metric tracking

Returns:
  Result of function f if sample passes, nil otherwise
sourceraw docstring

track-user-actionclj

(track-user-action emitter action _user-id success)

Tracks user actions as metrics.

Args: emitter - IMetricsEmitter instance action - Action type user-id - User identifier success - Whether action was successful

Returns: nil

Tracks user actions as metrics.

Args:
  emitter - IMetricsEmitter instance
  action  - Action type
  user-id - User identifier
  success - Whether action was successful

Returns:
  nil
sourceraw docstring

track-whenclj

(track-when condition f)

Conditionally tracks a metric.

Args: condition - Boolean condition f - Function that performs metric tracking

Returns: Result of function f if condition is true, nil otherwise

Conditionally tracks a metric.

Args:
  condition - Boolean condition
  f         - Function that performs metric tracking

Returns:
  Result of function f if condition is true, nil otherwise
sourceraw docstring

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
Move to previous article
Move to next article
Ctrl+/Jump to the search field
× close