* LogsPanel: integrate new panel via feature flag
* Log Line: move sampled/errors/deduplication count outside of log line body
* LogList: increase overscan count
* Logs Panel: enable deduplication for infinite scrolling
* Logs Panel: remove margin overflowing drilldown
* Logs Panel: add missing dependency to effect
* Logs Panel: pass missing callback
* Remove console log
* LogLine: show cursor pointer only when interactable
* LogLineDetails: make resize handler more obvious
* LogsPanel: add missing props to from panel
* LogLineMenu: add support for custom items
* LogsPanel: pass custom menu items to LogList
* Fix imports
* Chore: comments and missing argument
* LogLineMenu: pass log to event listener
* LogListContext: filter log details when no longer present in the new response
* chore: log
* LogsPanel: conditionally show options per feature flag status
* LogLine: align logs when some of them are sampled or with errors
* Chore: update tests
* LogLineMenu: test custom options
* LogsSamplePanel: show controls
* LogsPanel: move return after hooks to prevent bugs
* Bump tempo to 20250529124718-87c2dc380cec
Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
* Add owners to pkg/build
Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
* update workspace
Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
* update pkg/build/go.sum
Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
* update pkg/build/go.sum
Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
---------
Signed-off-by: Maicon Costa <maiconscosta@gmail.com>
* ds-querier: add new metric for the total request
Co-authored-by: Sarah Zinger <sarah.zinger@grafana.com>
* fix logger and trace
Co-authored-by: Sarah Zinger <sarah.zinger@grafana.com>
* ds-querier: rewrite downstream 500s to 400
---------
Co-authored-by: Sarah Zinger <sarah.zinger@grafana.com>
What is this feature?
This PR fixes the MissingSeriesEvalsToResolve behavior when it's set to more than 4 evaluation intervals.
Why do we need this feature?
The MissingSeriesEvalsToResolve setting was not working correctly due to alerts being auto-resolved by Alertmanager after 4 evaluation intervals (via the endsAt field).
Before we had deleteStaleStatesFromCache method that was returning only stale states that had to be resolved. Non-stale states for which the current evaluation does not have a series never had endsAt updated and were never resend to the Alertmanager, so they were automatically resolved after 4 evaluations regardless of the setting.
The new processMissingSeriesStates returns state for each missing series on every evaluation, and resolves the stale ones. This guarantees that alerts without series still alert for the configured number of evaluations.
* re-organize folders regarding import feature
* Revert folder changes
* Add Yaml import input fields
* Set recording rules target if empty
* wip
* Convert YAML content to RulerRulesConfigDTO and use this for the import payload
* fixing some issues
* wip
* add tracking
* use yaml filename for namespace in case is not specified in the yaml content
* refactor
* add alertingImportYAMLUI ff check for yaml option
* Add test for parseYamlToRulerRulesConfigDTO
* move import feature to the More menu at the top
* add test for filterRulerRulesConfig, and fix the function
* extract parseYamlToRulerRulesConfigDTO to a separate file
* Add permission check for the import button
* Change data flow in import form, add basic tests for the import form
* remove commented code
* Add yaml import form test
* Add more tests
* Tidy up, remove type assertions in yaml converter
* Improve yaml file validation in the form
* Fix lint issues
* Fix lint
* use only Admin role for checking if the feature is available for the user
* Fix parsing recording rules
* Fix file re-selection in YAML import
* prettier
* refactor
* Remove FileReader, add more explanation to file upload reset
---------
Co-authored-by: Konrad Lalik <konradlalik@gmail.com>