Module: Datadog::AppSec::Metrics::Telemetry
- Defined in:
- lib/datadog/appsec/metrics/telemetry.rb
Overview
A class responsible for reporting WAF and RASP telemetry metrics.
Class Method Summary collapse
Class Method Details
.report_rasp(type, result, phase: nil) ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/datadog/appsec/metrics/telemetry.rb', line 10 def report_rasp(type, result, phase: nil) return if result.error? = {rule_type: type, waf_version: WAF::VERSION::BASE_STRING} [:rule_variant] = phase if phase context = AppSec.active_context [:event_rules_version] = context.waf_runner_ruleset_version if context namespace = Ext::TELEMETRY_METRICS_NAMESPACE AppSec.telemetry.inc(namespace, 'rasp.rule.eval', 1, tags: ) AppSec.telemetry.inc(namespace, 'rasp.rule.match', 1, tags: ) if result.match? AppSec.telemetry.inc(namespace, 'rasp.timeout', 1, tags: ) if result.timeout? end |