-
Notifications
You must be signed in to change notification settings - Fork 441
MainController#index and Monitor#index charts
We have charts in both pages, which both come from StatusHistory
StatusHistories
are created every 30 seconds, getting the information from backend via Backend::Api::BuildResults::Worker.status
, as described here.
We delete every day StatusHistory
that are older than 1 year.
After that, We down-sample the StatusHistory
using the following rules:
In comparison with the newest created record (The decision of the time frame is not a diff from Time.now
, but a diff from the newest created StatusHistory
time, using StatusHistory.maximum(:time) - time_offset
):
-
For records older than a month, re-scale the data in 12 hours slots
-
For records older than 7 days, re-scale the data in 6 hours slots
-
For records older than 1 day, re-scale the data in 1 hour slots
-
For records older than 2 hours, re-scale the data in 4 minutes slots
-
Records newer than 2 hours, stay untouched.
- We fetch all
StatusHistory
from last week - We resample this data to over-sample it and have a smooth chart (this resample happens dynamically, using
StatusHelper.resample
) - We cache this data for 10 minutes
- We show the chart in https://build.opensuse.org/
- TBD
- Development Environment Overview
- Development Environment Tips & Tricks
- Spec-Tips
- Code Style
- Rubocop
- Testing with VCR
- Authentication
- Authorization
- Autocomplete
- BS Requests
- Events
- ProjectLog
- Notifications
- Feature Toggles
- Build Results
- Attrib classes
- Flags
- The BackendPackage Cache
- Maintenance classes
- Cloud uploader
- Delayed Jobs
- Staging Workflow
- StatusHistory
- OBS API
- Owner Search
- Search
- Links
- Distributions
- Repository
- Data Migrations
- next_rails
- Ruby Update
- Rails Profiling
- Installing a local LDAP-server
- Remote Pairing Setup Guide
- Factory Dashboard
- osc
- Setup an OBS Development Environment on macOS
- Run OpenQA smoketest locally
- Responsive Guidelines
- Importing database dumps
- Problem Statement & Solution
- Kickoff New Stuff
- New Swagger API doc
- Documentation and Communication
- GitHub Actions
- How to Introduce Software Design Patterns
- Query Objects
- Services
- View Components
- RFC: Core Components
- RFC: Decorator Pattern
- RFC: Backend models