Tim Andersson has proposed merging ~andersson123/autopkgtest-cloud:admin-page-running-for-logtail-mismatch-heuristic into autopkgtest-cloud:master.
Requested reviews: Canonical's Ubuntu QA (canonical-ubuntu-qa) Related bugs: Bug #2058463 in Auto Package Testing: "Admin page should also display tests with mismatched running for and timestamp in logtail" https://bugs.launchpad.net/auto-package-testing/+bug/2058463 For more details, see: https://code.launchpad.net/~andersson123/autopkgtest-cloud/+git/autopkgtest-cloud/+merge/463761 -- Your team Canonical's Ubuntu QA is requested to review the proposed merge of ~andersson123/autopkgtest-cloud:admin-page-running-for-logtail-mismatch-heuristic into autopkgtest-cloud:master.
diff --git a/charms/focal/autopkgtest-web/webcontrol/helpers/admin.py b/charms/focal/autopkgtest-web/webcontrol/helpers/admin.py index afc406b..a717f7b 100644 --- a/charms/focal/autopkgtest-web/webcontrol/helpers/admin.py +++ b/charms/focal/autopkgtest-web/webcontrol/helpers/admin.py @@ -1,14 +1,25 @@ +import re + MAX_DURATION_FACTOR_BEFORE_CONSIDERED_WEIRD = 5 +MIN_LOGTAIL_DEVIATION = 0.75 +TIMESTAMP_REGEX = "^[0-9]+s" def select_abnormally_long_jobs(running_info, get_test_id, db_con): global MAX_DURATION_FACTOR_BEFORE_CONSIDERED_WEIRD + filter_re = re.compile(TIMESTAMP_REGEX.encode("UTF-8"), re.DOTALL) pruned_running_info = {} for running_pkg, running_dict in running_info.items(): for skey, sval in running_dict.items(): for release, values in sval.items(): for arch, vals in values.items(): duration = vals[1] + logtail = vals[2] + timestamp = logtail.split(" ")[0] + timestamps_deviation = 1 + if filter_re.search(timestamp): + logtail_running_for = int(timestamp.replace("s", "")) + timestamps_deviation = logtail_running_for / duration test_id = get_test_id(release, arch, running_pkg) if test_id is None: continue @@ -21,7 +32,7 @@ def select_abnormally_long_jobs(running_info, get_test_id, db_con): (duration) > duration_avg * MAX_DURATION_FACTOR_BEFORE_CONSIDERED_WEIRD - ): + ) or (timestamps_deviation < MIN_LOGTAIL_DEVIATION): pruned_running_info.setdefault( running_pkg, {} ).setdefault(skey, {}).setdefault(
-- Mailing list: https://launchpad.net/~canonical-ubuntu-qa Post to : canonical-ubuntu-qa@lists.launchpad.net Unsubscribe : https://launchpad.net/~canonical-ubuntu-qa More help : https://help.launchpad.net/ListHelp