Commit 3a13717
fix(observability): do not probe when observability hook is not installed
We should not train people or machines to ignore red ERROR messages.
With this change and chainguard-dev#2479, we have zero ERROR log entries in a
successful build.
Previously RetrieveObservabilityEvents always sent three `test -f`
SSH commands to probe for the observability events file, even when the
hook was never installed. Each probe exits non-zero (file not found),
causing sendSSHCommand to log ERROR three times for every build to the
console.
During CPIO generation, scan the base initramfs for the hook's
sentinel file (etc/tetragon/tetragon.tp.d/network-monitor.yaml) and
record the result in cfg.ObservabilityHook. This is accurate regardless
of how the package got into the image — QEMU_ADDITIONAL_PACKAGES,
QEMU_BASE_INITRAMFS, or any other mechanism. RetrieveObservabilityEvents
returns immediately when ObservabilityHook is false, and treats a
missing events file as an error when it is true.
We can now also correctly ERROR when there _was_ a observability hook
installed rather than just assuming it was not there.
Store the result of that scan in a sidecar (<cpio>.observability) so we
do not have to scan on cached initramfs. The sidecar is invalidated
automatically when the CPIO is newer (fresh build,
QEMU_ADDITIONAL_PACKAGES change, etc.).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>1 parent 2f32e77 commit 3a13717
File tree
4 files changed
+86
-9
lines changed- pkg
- build
- container
4 files changed
+86
-9
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
774 | 774 | | |
775 | 775 | | |
776 | 776 | | |
777 | | - | |
| 777 | + | |
778 | 778 | | |
779 | 779 | | |
780 | 780 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
81 | 81 | | |
82 | 82 | | |
83 | 83 | | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
84 | 89 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
34 | 40 | | |
35 | 41 | | |
36 | 42 | | |
| |||
60 | 66 | | |
61 | 67 | | |
62 | 68 | | |
63 | | - | |
64 | | - | |
65 | | - | |
| 69 | + | |
| 70 | + | |
66 | 71 | | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
67 | 75 | | |
68 | 76 | | |
69 | 77 | | |
70 | 78 | | |
71 | 79 | | |
72 | 80 | | |
73 | | - | |
74 | | - | |
| 81 | + | |
75 | 82 | | |
76 | 83 | | |
77 | 84 | | |
| |||
83 | 90 | | |
84 | 91 | | |
85 | 92 | | |
86 | | - | |
87 | | - | |
88 | | - | |
| 93 | + | |
89 | 94 | | |
90 | 95 | | |
91 | 96 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2215 | 2215 | | |
2216 | 2216 | | |
2217 | 2217 | | |
| 2218 | + | |
| 2219 | + | |
| 2220 | + | |
| 2221 | + | |
| 2222 | + | |
2218 | 2223 | | |
2219 | 2224 | | |
2220 | 2225 | | |
| |||
2301 | 2306 | | |
2302 | 2307 | | |
2303 | 2308 | | |
| 2309 | + | |
| 2310 | + | |
| 2311 | + | |
| 2312 | + | |
| 2313 | + | |
| 2314 | + | |
| 2315 | + | |
| 2316 | + | |
| 2317 | + | |
| 2318 | + | |
| 2319 | + | |
| 2320 | + | |
| 2321 | + | |
| 2322 | + | |
| 2323 | + | |
| 2324 | + | |
| 2325 | + | |
| 2326 | + | |
| 2327 | + | |
| 2328 | + | |
| 2329 | + | |
| 2330 | + | |
| 2331 | + | |
| 2332 | + | |
| 2333 | + | |
| 2334 | + | |
| 2335 | + | |
| 2336 | + | |
| 2337 | + | |
| 2338 | + | |
| 2339 | + | |
| 2340 | + | |
| 2341 | + | |
| 2342 | + | |
| 2343 | + | |
| 2344 | + | |
| 2345 | + | |
| 2346 | + | |
| 2347 | + | |
| 2348 | + | |
| 2349 | + | |
| 2350 | + | |
| 2351 | + | |
| 2352 | + | |
| 2353 | + | |
| 2354 | + | |
| 2355 | + | |
| 2356 | + | |
| 2357 | + | |
| 2358 | + | |
| 2359 | + | |
| 2360 | + | |
| 2361 | + | |
| 2362 | + | |
| 2363 | + | |
| 2364 | + | |
| 2365 | + | |
| 2366 | + | |
| 2367 | + | |
| 2368 | + | |
| 2369 | + | |
| 2370 | + | |
2304 | 2371 | | |
2305 | 2372 | | |
2306 | 2373 | | |
| |||
0 commit comments