ASM Violations

Overview

Module Name in API

bigip-asm-violations

Product Name in API

local-traffic

Dimensions

Dimension Name in API Description
Severity severity The severity of the violations
Virtual Server virtual  
BIG-IP Blade Number slot-id Used for BIG-IP Chassis with multiple blades. A value of 0 means this is a non chassis BIG-IP, any other value tells the serial number of the blade in the chassis
Client IP client-ip  
Attack Type attack-type  
ASM Policy Name asm-policy-name  
Virus Name virus-name  
BIG-IP Host Name hostname The hostname given to the BIG-IP
Network Protocol protocol  
Application Service applicationService  
Violation violation  
Violation Rating asm-violation-rating Severity rating of the violations
BIG-IP Service Cluster dsc-name Clusters of BIG-IPs grouped together to have the same config
Application applications  
Action security-action The action a security module took with this transaction/packet, such as allow or block

MetricSets

Violations

Description

Name In API

violations-count

Metrics in the metricSet

Metric Name in API Unit Description
Total Violations Count count violations Total number of violations that took place among all the transactions
Violations/s avg-count-per-sec violations/s Average number of violations took place among all the transactions, per second

Examples

By Time Query

A query by time returns a series of data points in time, based on optional filters, time range, and time granularity. This query kind is identified by the keyword: “ap:query:stats:byTime”

POST https://<address>/mgmt/ap/query/v1/tenants/default/products/local-traffic/metric-query

This example for JSON body in the post, filters by dimension severity and get the count of violations-count

{
    "kind": "ap:query:stats:byTime",
    "module": "bigip-asm-violations",
    "timeRange": {
            "from": "-1h",
            "to": "now"
    },
    "timeGranularity": {
            "duration": 30,
            "unit": "SECONDS"
    },
    "aggregations": {
            "violations-count$count": {
                    "metricSet": "violations-count",
                    "metric": "count"
            }
    },
    "dimensionFilter": {
            "type": "eq",
            "dimension": "severity",
            "value": "value to filter by"
    }
}

By Entities Query

A query by entities returns a sort set of entities, based on optional filters, time range, and choosen metric to sort by. This query kind is identified by the keyword: “ap:query:stats:byEntities”

POST https://<address>/mgmt/ap/query/v1/tenants/default/products/local-traffic/metric-query

This example for JSON body in the post, gets top entities of type severity, sorted by count of violations-count

{
    "kind": "ap:query:stats:byEntities",
    "module": "bigip-asm-violations",
    "timeRange": {
            "from": "-1H",
            "to": "now"
    },
    "dimension": "severity",
    "sortMetric": "violations-count$count",
    "sortOrder": "desc",
    "aggregations": {
            "violations-count$count": {
                    "metricSet": "violations-count",
                    "metric": "count"
            }
    },
    "limit": 5
}

Entities Count Query

An entities count query returns the distinct count of entities, based on optional filters, time range, and choosen entity type. This query kind is identified by the keyword: “ap:query:stats:entitiesCount”

POST https://<address>/mgmt/ap/query/v1/tenants/default/products/local-traffic/metric-query

This example for JSON body in the post, gets the distinct count of entities of type severity

{
    "kind": "ap:query:stats:entitiesCount",
    "module": "bigip-asm-violations",
    "dimension": "severity",
    "timeRange": {
            "from": "-1h",
            "to": "now"
    }
}