Forum Discussion
HTTP Health Monitor in Receive Strings with Regular Expressions
Hello Community,
I need to monitor http servers with regular expressions in the http receive strings. If receive string exact match with "Healthy" word then F5 send the requests to the servers.
list ltm monitor http Healthy
{
adaptive disabled
defaults-from http
destination 10.0.1.20:http
interval 5
ip-dscp 0
recv \bHealthy\b
recv-disable none
send "GET / HTTP/1.1\r\nHost: 10.0.1.20\r\nConnection: Close\r\n\r\n"
time-until-up 0
timeout 16
}
Server up and running and regex is fine but pool members are down.
I need some help in this topic.
Thank You / Best Regards
- JRahmAdmin
regex in iRules and monitors are slightly modified, and the \b might not be doing what you think it should. Details on monitor regex here. You can also see what is happening by logging the debug details of the monitor:
tmsh modify sys db bigd.debug value enable
Just make sure that you disable when you have what you need.
- ahmetnumanNimbostratus
Hello Jason,
I solved my problem using with two health monitor as i mention upper. Unfourtunately regex did not work properly as i expected.
Best Regards.
Hi Ahmet,
You can use Healthy for one string. You don't need regular expression.
Node and pool have separate monitors?
Can you check the response returned from the default directory on the server via curl?
curl -kv "http://10.0.1.20"
If the receive string is not in first 5120 bytes, the pool member is marked down.
Using regular expressions in a health monitor receive string
https://support.f5.com/csp/article/K5917
Content length limits for HTTP and HTTPS health monitors
- ahmetnumanNimbostratus
Hi Again ,
I solve this problem with creating two monitor and assign them pool with "Availability Requirement At least 2 Health Monitor(s)".
Firs monitor condition is :
Receive String : Unhealth
Reverse : Yes
Second monitor condition is:
Receive String : Health
Best Regards.
- ahmetnumanNimbostratus
Hi Enes,
I have to use regex in receive string because, when service is not ready server is returning "Unhealty" string to the client. If i use just string in the receive string, LTM will see "healty" in the response, then pool member will be up.
Best regards.
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