browsertrix/backend/btrixcloud
Ilya Kreymer 5cad9acee9
Compute crawl execution time in operator (#1256)
* store execution time in operator:
- rename isNewCrash -> isNewExit, crashTime -> exitTime
- keep track of exitCode
- add execTime counter, increment when state has a 'finishedAt' and 'startedAt' state
- ensure pods are complete before deleting
- store 'crawlExecSeconds' on crawl and org levels, add to Crawl, CrawlOut, Organization models

* support for fast cancel:
- set redis ':canceled' key to immediately cancel crawl
- delete crawl pods to ensure pod exits immediately
- in finalizer, don't wait for pods to complete when canceling (but still check if terminated)
- add currentTime in pod.status.running.startedAt times for all existing pods
- logging: log exec time, missing finishedAt
- logging: don't log exit code 11 (interrupt due to time/size limits) as a crash

* don't wait for pods completed on failed with existing browsertrix-crawler image

---------
Co-authored-by: Tessa Walsh <tessa@bitarchivist.net>
2023-10-09 17:45:00 -07:00
..
migrations optimization: convert all uses of 'async for' to use iterator directly (#1229) 2023-09-28 12:31:08 -07:00
templates Track pod resource usage, detect OOM crashes, handle auto-scaling (#1235) 2023-10-05 20:41:18 -07:00
__init__.py
basecrawls.py Track pod resource usage, detect OOM crashes, handle auto-scaling (#1235) 2023-10-05 20:41:18 -07:00
colls.py Fix: Make Collections Public on Creation (#1213) 2023-09-29 12:08:10 -07:00
crawlconfigs.py Separate seeds into a new endpoints (#1217) 2023-10-02 10:56:12 -07:00
crawlmanager.py feat: use is_bool to check EMAIL_SMTP_USE_TLS (#1231) 2023-10-02 21:29:36 -07:00
crawls.py Compute crawl execution time in operator (#1256) 2023-10-09 17:45:00 -07:00
db.py migration improvements: (#1228) 2023-09-28 12:04:19 -07:00
emailsender.py feat: use is_bool to check EMAIL_SMTP_USE_TLS (#1231) 2023-10-02 21:29:36 -07:00
invites.py feat: use is_bool to check EMAIL_SMTP_USE_TLS (#1231) 2023-10-02 21:29:36 -07:00
k8sapi.py Track pod resource usage, detect OOM crashes, handle auto-scaling (#1235) 2023-10-05 20:41:18 -07:00
main_op.py Track pod resource usage, detect OOM crashes, handle auto-scaling (#1235) 2023-10-05 20:41:18 -07:00
main.py feat: use is_bool to check EMAIL_SMTP_USE_TLS (#1231) 2023-10-02 21:29:36 -07:00
models.py Compute crawl execution time in operator (#1256) 2023-10-09 17:45:00 -07:00
operator.py Compute crawl execution time in operator (#1256) 2023-10-09 17:45:00 -07:00
orgs.py Compute crawl execution time in operator (#1256) 2023-10-09 17:45:00 -07:00
pagination.py
profiles.py
storages.py Fix: Stream log downloading from WACZ (#1225) 2023-09-28 18:54:52 -07:00
uploads.py API delete endpoint improvements (#1232) 2023-10-03 13:05:00 -07:00
users.py fix: lookup user object operator to pass to CrawlConfig.add_new_crawl (#1254) 2023-10-05 21:30:10 -07:00
utils.py Track pod resource usage, detect OOM crashes, handle auto-scaling (#1235) 2023-10-05 20:41:18 -07:00
version.py version: bump to 1.7.0-beta.2 2023-10-05 20:33:38 -07:00
webhooks.py
zip.py Fix: Stream log downloading from WACZ (#1225) 2023-09-28 18:54:52 -07:00