Forum Discussion
BIG-IP : iRule class match fails to find data-group
F5 BIG-IP 11.4.1 Build 635.0 Hotfix HF2 LTM VE ESXi
Starting last night, for every request processed by my irule-01 I see this error :
Mon Sep 8 23:15:57 PDT 2014 err test-f5-01 tmm1[8721] 01220001 TCL error: /Common/irule-01 - Could not find class list_bots (line 2) invoked from within "class match -value [string tolower [HTTP::header User-Agent]] contains list_bots"
Here's the relevant line 2 :
set bot_generated [class match -value [string tolower [HTTP::header User-Agent]] contains list_bots]
But the
list_bots
external data-group ( type string ) is present and contains properly formatted name-value pairs and in fact it always has been present and has always processed correctly in the past.
Here is a sample line from list_bots :
"bingbot" := "bingbot",
I deleted list_bots external data-group and re-created it but still same issue.
What could be going on ? What could have changed ? What can I do ?
- What_Lies_Bene1Cirrostratus
Its a long shot but can you try this, just in case a User Agent string starts with a
;-
set bot_generated [class match -value -- [string tolower [HTTP::header User-Agent]] contains list_bots]
Also, can you post an excerpt of the DG and let us know what TMOS version please?
- John_Alam_45640Historic F5 Account
If this is a list of Bots, the datagroup is not made up of name/value pairs. Then the "-value" is not appropriate.
try this:
set bot_generated [class match -- [string tolower [HTTP::header User-Agent]] equals list_bots]
- Thanks for the response John. Actually list_bots is made up of name/value pairs, so the class match syntax is correct.. Please note that this always worked in the past - just recently BIG-IP began reporting that it could not find data-group list_bots
- John_Alam_45640Historic F5 Account
Interesting, but if it is a list, you should not need to specify a value.
Is the datagroup external or internal, if external, can you re-Import it into the cache under iRules/data group List.
HTH
- I chose to use external data-group because it is less fragile ( via command-line I can work directly with the data-group file ). I've already tried deleting & re-creating to no avail.
Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com