Alerting: Add "backend" label to state history writes metrics (#65395)
* Add backend label to state history writes metrics
* Update test expectations
(cherry picked from commit dd04757fc9)
Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>
Increase coverage of 'Grafana Cloud' labels (#64646)
* Add 'Grafana Cloud' label to content
All pages are applicable to both 'Open source' and 'Grafana Cloud'
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Add 'Grafana Cloud' label to administration content with some exceptions
- Enterprise licensing is 'Open source' and 'Enterprise'.
- 'Manage Organizations', 'Provision Grafana', and 'Stats and License' are 'Open source' only.
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
* Remove OSS from enterprise-licensing content
* Apply suggestions from code review
---------
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
(cherry picked from commit dca5adeb98)
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
* Improve showing nextEvaluationDate for rules
Co-Authored-By: Konrad Lalik <konradlalik@gmail.com>
* Improve imports and comments
---------
Co-authored-by: Konrad Lalik <konradlalik@gmail.com>
(cherry picked from commit b90aed4fd7)
* Alerting: Fix stats that display alert count when using unified alerting (#64852)
* Alerting: Fix stats when using unified alerting
(cherry picked from commit 02a8f62021)
* bundle services is not needed for 9.4.x
---------
Co-authored-by: gotjosh <josue.abreu@gmail.com>
Database: Don't sleep 10ms before every request (#64832)
Previously every DB operation would wait 10ms before even trying.
Now we try first, and defer creating the ticker until we need it.
(cherry picked from commit f4a5f91496)
Co-authored-by: Bryan Boreham <bjboreham@gmail.com>
Docs: Use correct function in labels and annotations docs (#65032)
Use correct function in labels and annotations docs
(cherry picked from commit 0464aebc8e)
Co-authored-by: Martin Beentjes <martinbeentjes@users.noreply.github.com>
Add @imatwawana to CODEOWNERS for her area of responsibility (#64963)
(cherry picked from commit 8941ca813c)
Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Docs/updates amazon cloudwatch (#64987)
* updated AWS to Amazon in the index file
* edited query editor index file -AWS with Amazon
(cherry picked from commit 0975e53fc0)
Co-authored-by: lwandz13 <126723338+lwandz13@users.noreply.github.com>
SQL Datasources: Prevent Call Stack Overflows with Large Numbers of Values for Variable (#64937)
* Push values with every map call to avoid hitting the maximum call stack size.
* Add test and refactor to for of
* Use native fill instead of lodash
---------
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
(cherry picked from commit bf687fff45)
Co-authored-by: Kyle Cunningham <codeincarnate@users.noreply.github.com>
Alerting: Fix attachment of external labels to Loki state history log streams (#65140)
Fix attachment of external labels, add tests
(cherry picked from commit 07368dec74)
Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>
* Alerting: Switch to snappy-compressed-protobuf for outgoing push requests to Loki (#65077)
* Encode with snappy, always
* JSON encoder type
* Headers
* Copy labels formatter from promtail
* Implement snappy-proto encoding
* Create encoder interface, test both encoders, choose snappy-proto by default
* Make encoder configurable at the LokiCfg level
* Export both encoders
* Touch up comment and tests
* Drop unnecessary conversions after move to plain strings to appease linter
(cherry picked from commit bf54f2672e)
* Sample fields got renamed between 9.4 and main
Alerting: Fix ambiguous handling of equals in labels when bucketing Loki state history streams (#65013)
* Use JSON instead of data.Labels string format as label repr
* Drop debug log line
(cherry picked from commit cc7e5ce62e)
Prometheus: Feedback link for metric encyclopedia plus performance improvements (#64576)
* add filtered results
* add feedback link
* correctly debounce fuzzy search thank you leon
* reduce calls to filterMetrics()in letter search
* clean up the alphabet type
* bug fix, filter type should be subtractive
* each filter is don;t explicitly, subtracting from the results of each
* Revert "each filter is don;t explicitly, subtracting from the results of each"
This reverts commit 5648788451.
* each filter is filtered explicitly, one after the other, subtracting from the results of each
(cherry picked from commit 2e4b134743)
Alerting: Elide requests to Loki if nothing should be recorded (#65011)
Exit early if no log streams or annotations
(cherry picked from commit e39d7f44c9)
Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>
Docs: Add documentation on how to debug backend plugins (#64814)
* Docs: Add documentation on how to debug backend plugins
* Changes from PR reviews
* PR review changes
(cherry picked from commit 41b0c17aae)
Co-authored-by: Giuseppe Guerra <giuseppe.guerra@grafana.com>
Information about SQLite limitations (#64990)
* Update _index.md
I am creating this PR to add more content about the SQLite (the default database for Grafana) limitations. SQLite is fine for small environments but not suitable when monitoring many Dashboards and sending lots of alerts frequently.
For e.g. this issue is just from this week and then got followed up by 3-4 more similar issues (all related to SQLite and are linked with this issue)
Closes#64664
By adding more information, will have less frequency of such issues reported by users.
Also, once this PR get submitted, will also create a new PR about the possible workaround to not get the error message "database locked" while using SQLite.
* Update docs/sources/setup-grafana/installation/_index.md
Thank you. Also, can you please add this link to the High Availablity text as hyperlink.
Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
* Update docs/sources/setup-grafana/installation/_index.md
* Update docs/sources/setup-grafana/installation/_index.md
---------
Co-authored-by: Christopher Moyer <35463610+chri2547@users.noreply.github.com>
(cherry picked from commit ccfe09d20e)
Co-authored-by: Usman Ahmad <69509548+usmangt@users.noreply.github.com>
AzureMonitor: Fix query variable migration (#63991)
* AzureMonitor: Fix query variable migration
Somehow the query object becomes "unwriteable" post 9.4. To workaround
this I clone the query object before doing any migrations which removes
the immutability and allows the migrations to function as they did.
Fixes#63943
* refactor deepClone out to keep object the same
(cherry picked from commit 3498785184)
Co-authored-by: Adam Simpson <adam@adamsimpson.net>
Vendor errors.Join from Go standard library to avoid version incompatibilities (#64985)
Vendor errors.Join from std lib
(cherry picked from commit 40c5713cbd)
Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>
Alerting: Create new state history "fanout" backend that dispatches to multiple other backends at once (#64774)
* Rename RecordStatesAsync to Record
* Rename QueryStates to Query
* Implement fanout writes
* Implement primary queries
* Simplify error joining
* Add test for query path
* Add tests for writes and error propagation
* Allow fanout backend to be configured
* Touch up log messages and config validation
* Consistent documentation for all backend structs
* Parse and normalize backend names more consistently against an enum
* Touch-ups to documentation
* Improve clarity around multi-record blocking
* Keep primary and secondaries more distinct
* Rename fanout backend to multiple backend
* Simplify config keys for multi backend mode
(cherry picked from commit a31672fa40)
Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>
AzureMonitor: Increase wait for credentials to be ready in E2E test (#64969)
Increase wait for credentials to be ready
(cherry picked from commit edc47964b6)
Co-authored-by: Andreas Christou <andreas.christou@grafana.com>
SQLStore: Fix setting query tries for integration tests (#64944)
* SQLStore: Pass testinfra database configuration to the test database
* Add test
* Bypass gocyclo check for initTestDB
(cherry picked from commit f5cb8c660e)
Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
Alerting: Handful of small adjustments to log levels and parameters (#64572)
Calculate duration earlier in scheduler
(cherry picked from commit 9bcf8819d3)
Co-authored-by: Alexander Weaver <weaver.alex.d@gmail.com>
SQLStore: Fix SQLite error propagation if query retries are disabled (#64904)
* SQLStore: Add test when query retrying is disabled
* Fix condition
* Add test cases for sqlite3.ErrLocked
(cherry picked from commit 41843464d1)
Co-authored-by: Sofia Papagiannaki <1632407+papagian@users.noreply.github.com>
Navigation: handle case when there is no alerting node at all (#64941)
* handle case when there is no alerting node at all
* update backend tests
(cherry picked from commit f4c62a5c5d)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>
Alerting: QoL improvements to the unified alerting multi-replica devenv (#64907)
(cherry picked from commit 406431df4e)
Co-authored-by: gotjosh <josue.abreu@gmail.com>
Navigation: Correctly create `Alerts and incidents` section when using legacy alerting (#64924)
check for legacy alerting node as well
(cherry picked from commit 54dd8943ca)
Co-authored-by: Ashley Harrison <ashley.harrison@grafana.com>