bryancall opened a new pull request, #13749:
URL: https://github.com/apache/trafficserver/pull/13749

   ATS rolls its logs daily at 00:00 UTC by default 
(`proxy.config.log.rolling_enabled: 1`, `rolling_interval_sec: 86400`, 
`rolling_offset_hr: 0`). When an autest is running at midnight, its logs are 
renamed to `*.old`, and its end-of-test `Disk.File` content checks then read 
the fresh, empty file and fail.
   
   This is the cause of the `jax_fingerprint` and `log-filenames` failures on 
the AuTest 1of4 shard. Over the last two weeks, 5 of the 6 AuTest 1of4 shard 
runs that spanned 00:00 UTC (apache and ATSUnderground CI together) failed one 
or both tests. None of the 107 runs that did not span midnight failed either 
one. The failing assertions were:
   
   - `Verify the jax_fingerprint log contains a JA4H fingerprint.` (also JA4 
and JA3)
   - `error.log should contain connection error messages`
   - `my_custom_log.log should contain the custom transaction logs`
   
   This change turns time-based log rolling off once, in `MakeATSProcess`, so 
every autest ATS instance gets it. `stale_response.test.py` already did this 
for the same reason in #13410. Tests that exercise rolling (`log_retention`, 
`sigusr2`) set `proxy.config.log.rolling_enabled` themselves, and that still 
overrides this default.
   
   ## Testing
   
   Built master (a2416f2826) with the `ci-fedora-autest` preset in 
`ci.trafficserver.apache.org/ats/fedora:44`, then used libfaketime to start the 
container clock just before midnight UTC:
   
   | | jax_fingerprint | log-filenames |
   |---|---|---|
   | Across midnight, before this change | fails with the CI assertions above; 
the logs are rolled to `*.old` | fails with the CI assertions above; the logs 
are rolled to `*.old` |
   | Across midnight, with this change | 3 of 3 pass, nothing rolled | 2 of 2 
pass, nothing rolled |
   | Normal clock, 16 workers in parallel, before this change | 80 of 80 pass | 
80 of 80 pass |
   
   The rest of `gold_tests/logging` passes with this change (16 passed, 4 
skipped), as do `sigusr2` and `stale_response`.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to