Skip to content

New Metric Request: Add ASM bd thread que stats #259

@megamattzilla

Description

@megamattzilla

ASM customers can monitor the performance of their ASM bd service by collecting the thread que current and max status. This will help identify issues with head-of-line blocking if bd threads start slowing down.

These values are available via this tmctl command:

# tmctl tmm_plugin -s name,pending_tx,pending_tx_max,tmm_id -w 200  
name               pending_tx pending_tx_max tmm_id
------------------ ---------- -------------- ------
mem://apm_sso0              0              0      0
mem://apm_sso1              0              0      1
mem://apmd0                 0              0      0
mem://apmd1                 0              0      1
mem://bd0                   6              7      0
mem://bd0                  10              10      1
mem://bd1                   0              0      0
mem://bd1                   0              5      1
mem://bd2                   0              0      0
mem://bd2                   0              5      1
mem://bd3                   0              0      0
mem://bd3                   0              5      1
mem://ilx:148345:0          0              0      0
mem://ilx:148345:1          0              0      1
mem://lucenedb0             0              0      0
mem://lucenedb1             0              0      1
mem://oauth0                0              0      0
mem://oauth1                0              0      1
mem://ping0                 0              0      0
mem://ping1                 0              0      1
mem://rba                   0              0      0
mem://rba                   0              0      1
mem://websso0               0              0      0
mem://websso0               0              0      1
mem://websso1               0              0      0
mem://websso1               0              0      1

Only fields with name containing mem://bd* are related to ASM bd que. Were open to creating a more generic tmm_plugin metric or making it bd specific. Each BD thread will map to a variable number of TMM threads per F5 platform.

Ideally, the exported metric would look something like:

f5_bd_pending_tx{name=bd0, tmmid=0} 6
f5_bd_pending_tx_max{name=bd0, tmmid=0} 7

f5_bd_pending_tx{name=bd0, tmmid=1} 10
f5_bd_pending_tx_max{name=bd0, tmmid=1} 10

f5_bd_pending_tx{name=bd1, tmmid=0} 0
f5_bd_pending_tx_max{name=bd1, tmmid=0} 0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions