@@ -156,20 +156,17 @@ spec:
156156 accessLog :
157157 settings :
158158 - sinks :
159- # File sink: the test still scrapes stdout to derive the
159+ # File sink only -- identical to the production
160+ # downstream gateway EnvoyProxy. Envoy writes the JSON
161+ # access log to stdout; the node-local Vector agent
162+ # tails the container log file (kubernetes_logs source)
163+ # and emits the CloudEvents. This exercises the real,
164+ # file-based production ingestion path -- no OTLP push.
165+ # The test also scrapes the same stdout to derive the
160166 # expected metric values (bytes, duration, project_name).
161167 - type : File
162168 file :
163169 path : /dev/stdout
164- # OpenTelemetry sink: Envoy pushes the access log to the
165- # node-local Vector agent automatically, exercising the
166- # real production ingestion path (no manual forwarding).
167- - type : OpenTelemetry
168- openTelemetry :
169- host : billing-usage-collector-vector.billing-system.svc.cluster.local
170- port : 4317
171- resources :
172- service.name : nso-httproute-signals
173170 format :
174171 type : JSON
175172 json :
@@ -545,10 +542,11 @@ spec:
545542 curl -kvf -H \"Host: ${PRIMARY_HOSTNAME}\" -d 'hello world' http://\${GATEWAY_SERVICE_NAME}.\${GATEWAY_SERVICE_NAMESPACE}.svc.cluster.local/delay/2; \
546543 "
547544
548- # Verify Vector emitted the CloudEvents. Envoy pushed the access log to
549- # Vector automatically via its OpenTelemetry sink when the request above
550- # was served, so this step only derives the expected values and polls the
551- # mock billing gateway for the result.
545+ # Verify Vector emitted the CloudEvents. Envoy wrote the access log to
546+ # stdout via its File sink when the request above was served, and the
547+ # node-local Vector agent tailed the container log file (kubernetes_logs
548+ # source) automatically, so this step only derives the expected values
549+ # and polls the mock billing gateway for the result.
552550 - script :
553551 timeout : 45s
554552 cluster : nso-infra
@@ -559,16 +557,20 @@ spec:
559557 # =====================================================================
560558 # Validates the full HTTP metering pipeline, end to end:
561559 #
562- # Envoy access log --(OTLP push)--> Vector opentelemetry source
563- # | |
564- # | (also written to stdout for | (VRL transform fans the
565- # | capturing expected values) | log record out into
566- # v v CloudEvents)
567- # captured here (STEP 1-2) mock-billing-gateway (STEP 4)
560+ # Envoy access log --(File sink -> stdout)--> container log file
561+ # | |
562+ # | (captured here for | (Vector agent
563+ # | expected values) | kubernetes_logs
564+ # | | source tails it,
565+ # | | VRL transform fans
566+ # v v it into CloudEvents)
567+ # captured here (STEP 1-2) mock-billing-gateway (STEP 4)
568568 #
569- # Envoy pushes the access log to Vector automatically (OpenTelemetry
570- # sink on custom-proxy-config -> billing-usage-collector-vector:4317)
571- # when the request is served -- the test does NOT forward it manually.
569+ # Envoy writes the access log to stdout (File sink on
570+ # custom-proxy-config, path: /dev/stdout) when the request is
571+ # served; the node-local Vector agent tails the container log file
572+ # automatically -- the test does NOT forward it manually. This is
573+ # the same file-based ingestion path as the production gateway.
572574 #
573575 # A single access log line is expected to produce FOUR CloudEvents,
574576 # one per usage dimension, all sharing the same subject
@@ -627,11 +629,12 @@ spec:
627629 echo " - Project name (expected): $PROJECT_NAME"
628630
629631 # --- STEP 3: (no manual forwarding) --------------------------------
630- # The request above already caused Envoy to push this access log to
631- # Vector automatically via its OpenTelemetry sink (custom-proxy-config
632- # -> billing-usage-collector-vector:4317). Vector's VRL transform
633- # parses it and emits the four CloudEvents to the mock-billing-gateway
634- # sink, so there is nothing to POST here -- we just poll for the result.
632+ # The request above already caused Envoy to write this access log to
633+ # stdout via its File sink (custom-proxy-config, path: /dev/stdout).
634+ # The node-local Vector agent tails the Envoy container log file via
635+ # its kubernetes_logs source, and Vector's VRL transform parses it
636+ # and emits the four CloudEvents to the mock-billing-gateway sink, so
637+ # there is nothing to POST here -- we just poll for the result.
635638
636639 # --- STEP 4: verify the CloudEvents the mock billing gateway received
637640 # Poll the mock gateway's request log (Vector may take a moment to
0 commit comments