mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2026-05-04 20:46:11 +02:00
Added README documentation for each test configuration (sa, cmp, ctx, fe-be, empty, full) describing event coverage, signal usage, instrument tables, span hierarchies and run instructions.
86 lines
2.9 KiB
Plaintext
86 lines
2.9 KiB
Plaintext
Comparison test configuration (cmp/)
|
|
====================================
|
|
|
|
The 'cmp' test is a simplified standalone configuration made for comparison with
|
|
other tracing implementations. It uses a reduced set of events and a compact
|
|
span hierarchy without context propagation, groups or metrics. This
|
|
configuration is closer to a typical production deployment.
|
|
|
|
All response-side scopes (http_response, http_response-error, server_session_end
|
|
and client_session_end) share the on-http-response event, which means they fire
|
|
in a single batch at response time.
|
|
|
|
|
|
Files
|
|
-----
|
|
|
|
cmp/otel.cfg OTel filter configuration (scopes)
|
|
cmp/haproxy.cfg HAProxy frontend/backend configuration
|
|
cmp/otel.yml Exporter, processor, reader and provider definitions
|
|
run-cmp.sh Convenience script to launch HAProxy with this config
|
|
|
|
|
|
Events
|
|
------
|
|
|
|
T = Trace (span)
|
|
|
|
This configuration produces traces only -- no metrics or log-records.
|
|
|
|
Request analyzer events:
|
|
|
|
Event Scope T
|
|
--------------------------------------------------------
|
|
on-client-session-start client_session_start x
|
|
on-frontend-tcp-request frontend_tcp_request x
|
|
on-frontend-http-request frontend_http_request x
|
|
on-backend-tcp-request backend_tcp_request x
|
|
on-backend-http-request backend_http_request x
|
|
on-server-unavailable server_unavailable x
|
|
|
|
Response analyzer events:
|
|
|
|
Event Scope T
|
|
--------------------------------------------------------
|
|
on-server-session-start server_session_start x
|
|
on-tcp-response tcp_response x
|
|
on-http-response http_response x
|
|
on-http-response http_response-error x (conditional)
|
|
on-http-response server_session_end - (finish only)
|
|
on-http-response client_session_end - (finish only)
|
|
|
|
The http_response-error scope fires conditionally when the ACL
|
|
acl-http-status-ok (status 100:399) does not match, setting an error status
|
|
on the "HTTP response" span.
|
|
|
|
The server_session_end and client_session_end scopes are bound to the
|
|
on-http-response event and only perform finish operations.
|
|
|
|
|
|
Span hierarchy
|
|
--------------
|
|
|
|
"HAProxy session" (root)
|
|
+-- "Client session"
|
|
+-- "Frontend TCP request"
|
|
+-- "Frontend HTTP request"
|
|
+-- "Backend TCP request"
|
|
+-- "Backend HTTP request"
|
|
|
|
"HAProxy session" (root)
|
|
+-- "Server session"
|
|
+-- "TCP response"
|
|
+-- "HTTP response"
|
|
|
|
|
|
Running the test
|
|
----------------
|
|
|
|
From the test/ directory:
|
|
|
|
% ./run-cmp.sh [/path/to/haproxy] [pidfile]
|
|
|
|
If no arguments are given, the script looks for the haproxy binary three
|
|
directories up from the current working directory. The backend origin server
|
|
must be running on 127.0.0.1:8000.
|