Yuriy Tseretyan
facf2b1ee8
Chore: Update prometheus, loki, graphite and influx plugins to support contextual logs. ( #57708 )
2022-10-27 12:05:06 -04:00
ismail simsek
2f9636e698
InfluxDB: move datasource health check to backend ( #52668 )
...
* Move datasource health check to backend
* Introduce healthcheck unit tests
* Remove unused method
2022-07-28 12:06:09 +02:00
ismail simsek
3d68023606
Plugins: InfluxDB datasource - set epoch query param value as "ms" ( #51651 )
2022-07-07 13:02:20 -04:00
Joey Tawadrous
10232c7857
InfluxDB: backend migration (run query in explore) ( #43352 )
...
* InfluxDB backend migration
* Multiple queries and more
* Added types
* Updated preferredVisualisationType
* Updated model parser test to include limit,slimit,orderByTime
* Added test for building query with limit, slimit
* Added test for building query with limit, slimit, orderByTime and puts them in the correct order
* Add test: Influxdb response parser should parse two responses with different refIDs
* Moved methods to responds parser
* Add test to ensure ExecutedQueryString is populated
* Move functions out of response parser class
* Test for getSelectedParams
* Merge cases
* Change to const
* Test get table columns correctly
* Removed unecessary fields
* Test get table rows correctly
* Removed getSeries function
* Added test for preferredVisualisationType
* Added test for executedQueryString
* Modified response parser
* Removed test
* Improvements
* Tests
* Review changes
* Feature flag rename and code gen
2022-02-09 18:26:16 +00:00
Will Browne
7fbc7d019a
Plugins: Core plugins register via backend factory provider ( #43171 )
...
* refactoring store interface and init flow
* fix import
* fix linter
* refactor resource calling
* load with class
* re-order args
* fix tests
* fix linter
* remove old creator
* add custom config struct
* fix some tests
* cleanup
* fix
* tackle plugins
* fix linter
* refactor and fix test
* add connect failure error
* add fix for azure, cloud monitoring and test data
* restructure
* remove unused err
* add fake tracer for test
* fix grafana ds plugin
2022-01-20 18:16:22 +01:00
Will Browne
e4ba5f17dd
add core plugins thru store ( #43085 )
2021-12-14 15:22:40 +01:00
Will Browne
b80fbe03f0
Plugins: Refactor Plugin Management ( #40477 )
...
* add core plugin flow
* add instrumentation
* move func
* remove cruft
* support external backend plugins
* refactor + clean up
* remove comments
* refactor loader
* simplify core plugin path arg
* cleanup loggers
* move signature validator to plugins package
* fix sig packaging
* cleanup plugin model
* remove unnecessary plugin field
* add start+stop for pm
* fix failures
* add decommissioned state
* export fields just to get things flowing
* fix comments
* set static routes
* make image loading idempotent
* merge with backend plugin manager
* re-use funcs
* reorder imports + remove unnecessary interface
* add some TODOs + remove unused func
* remove unused instrumentation func
* simplify client usage
* remove import alias
* re-use backendplugin.Plugin interface
* re order funcs
* improve var name
* fix log statements
* refactor data model
* add logic for dupe check during loading
* cleanup state setting
* refactor loader
* cleanup manager interface
* add rendering flow
* refactor loading + init
* add renderer support
* fix renderer plugin
* reformat imports
* track errors
* fix plugin signature inheritance
* name param in interface
* update func comment
* fix func arg name
* introduce class concept
* remove func
* fix external plugin check
* apply changes from pm-experiment
* fix core plugins
* fix imports
* rename interface
* comment API interface
* add support for testdata plugin
* enable alerting + use correct core plugin contracts
* slim manager API
* fix param name
* fix filter
* support static routes
* fix rendering
* tidy rendering
* get tests compiling
* fix install+uninstall
* start finder test
* add finder test coverage
* start loader tests
* add test for core plugins
* load core + bundled test
* add test for nested plugin loading
* add test files
* clean interface + fix registering some core plugins
* refactoring
* reformat and create sub packages
* simplify core plugin init
* fix ctx cancel scenario
* migrate initializer
* remove Init() funcs
* add test starter
* new logger
* flesh out initializer tests
* refactoring
* remove unused svc
* refactor rendering flow
* fixup loader tests
* add enabled helper func
* fix logger name
* fix data fetchers
* fix case where plugin dir doesn't exist
* improve coverage + move dupe checking to loader
* remove noisy debug logs
* register core plugins automagically
* add support for renderer in catalog
* make private func + fix req validation
* use interface
* re-add check for renderer in catalog
* tidy up from moving to auto reg core plugins
* core plugin registrar
* guards
* copy over core plugins for test infra
* all tests green
* renames
* propagate new interfaces
* kill old manager
* get compiling
* tidy up
* update naming
* refactor manager test + cleanup
* add more cases to finder test
* migrate validator to field
* more coverage
* refactor dupe checking
* add test for plugin class
* add coverage for initializer
* split out rendering
* move
* fixup tests
* fix uss test
* fix frontend settings
* fix grafanads test
* add check when checking sig errors
* fix enabled map
* fixup
* allow manual setup of CM
* rename to cloud-monitoring
* remove TODO
* add installer interface for testing
* loader interface returns
* tests passing
* refactor + add more coverage
* support 'stackdriver'
* fix frontend settings loading
* improve naming based on package name
* small tidy
* refactor test
* fix renderer start
* make cloud-monitoring plugin ID clearer
* add plugin update test
* add integration tests
* don't break all if sig can't be calculated
* add root URL check test
* add more signature verification tests
* update DTO name
* update enabled plugins comment
* update comments
* fix linter
* revert fe naming change
* fix errors endpoint
* reset error code field name
* re-order test to help verify
* assert -> require
* pm check
* add missing entry + re-order
* re-check
* dump icon log
* verify manager contents first
* reformat
* apply PR feedback
* apply style changes
* fix one vs all loading err
* improve log output
* only start when no signature error
* move log
* rework plugin update check
* fix test
* fix multi loading from cfg.PluginSettings
* improve log output #2
* add error abstraction to capture errors without registering a plugin
* add debug log
* add unsigned warning
* e2e test attempt
* fix logger
* set home path
* prevent panic
* alternate
* ugh.. fix home path
* return renderer even if not started
* make renderer plugin managed
* add fallback renderer icon, update renderer badge + prevent changes when renderer is installed
* fix icon loading
* rollback renderer changes
* use correct field
* remove unneccessary block
* remove newline
* remove unused func
* fix bundled plugins base + module fields
* remove unused field since refactor
* add authorizer abstraction
* loader only returns plugins expected to run
* fix multi log output
2021-11-01 10:53:33 +01:00
Gábor Farkas
6cab44d73a
InfluxDB: InfluxQL: handle new-alerting better ( #37588 )
...
* influxdb: influxql: alert: use already-computed interval-value when available
* reverted by-mistake changed import
* simplify code
now we can rely on DataQuery.Interval always being good
* removed unnecessary test
* fix lint-error
2021-09-06 09:33:07 +02:00
Arve Knudsen
78596a6756
Migrate to Wire for dependency injection ( #32289 )
...
Fixes #30144
Co-authored-by: dsotirakis <sotirakis.dim@gmail.com>
Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
Co-authored-by: Ida Furjesova <ida.furjesova@grafana.com>
Co-authored-by: Jack Westbrook <jack.westbrook@gmail.com>
Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
Co-authored-by: Andrej Ocenas <mr.ocenas@gmail.com>
Co-authored-by: spinillos <selenepinillos@gmail.com>
Co-authored-by: Karl Persson <kalle.persson@grafana.com>
Co-authored-by: Leonard Gram <leo@xlson.com>
2021-08-25 15:11:22 +02:00
Will Browne
1618d5ad6f
use most appropriate func for registering core plugins ( #38497 )
2021-08-25 10:08:48 +02:00
idafurjes
cec12676e7
Chore: Refactor influxdb to use SDK contracts ( #36189 )
...
* Use backend SDK for influxdb
* Remove BasicAuth condition, some comments
* Remove not used fields from datasource info
* Register InfluxDBService
* Fix casting and make HTTPClientProvider exported
* Remove unused function
* Remove empty line
* Update pkg/tsdb/influxdb/flux/query_models.go
Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
* Read interval from TimeRange instead of Interval
* Change pkg name from datasource->models, minor changes
* Use testify instead of convey
* Add new calculator logic and fix pointer semantic for dsInfo
* Initialise parsers, use tsdb interval pkg
Co-authored-by: Gábor Farkas <gabor.farkas@gmail.com>
2021-07-19 11:32:33 +02:00
Marcus Efraimsson
348e76fc8e
Datasource: Shared HTTP client provider for core backend data sources and any data source using the data source proxy ( #33439 )
...
Uses new httpclient package from grafana-plugin-sdk-go introduced
via grafana/grafana-plugin-sdk-go#328 .
Replaces the GetHTTPClient, GetTransport, GetTLSConfig methods defined
on DataSource model.
Longer-term the goal is to migrate core HTTP backend data sources to use the
SDK contracts and using httpclient.Provider for creating HTTP clients and such.
Co-authored-by: Arve Knudsen <arve.knudsen@gmail.com>
2021-05-19 23:53:41 +02:00
Ryan McKinley
7627b55ef4
TSDB: add deprecation comments to many tsdb structs ( #33281 )
2021-04-23 03:03:11 +02:00
Gábor Farkas
7ff6665ac2
Alerting: InfluxDB: InfluxQL: convert backend-code to use dataframes ( #32950 )
...
* alerting: influxdb: refactor unit-tests
* alerting: influxdb: converted code from timeseries-mode to dataframe-mode
* influxdb: simplify code
* influxdb: better function name
* influxdb: alerting: more tests
* influxdb: alerting: more tests
* influxdb: refactor
* influxdb: improved unit-test
* influxdb: simplified code
* influxdb: refactor reponse-parser code
* influxdb: refactor unit tests
* influxdb: alerting: use nicer names
Co-authored-by: dsotirakis <sotirakis.dim@gmail.com>
2021-04-22 08:43:17 +02:00
Arve Knudsen
b79e61656a
Introduce TSDB service ( #31520 )
...
* Introduce TSDB service
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
Co-authored-by: Erik Sundell <erik.sundell87@gmail.com>
Co-authored-by: Will Browne <will.browne@grafana.com>
Co-authored-by: Torkel Ödegaard <torkel@grafana.org>
Co-authored-by: Will Browne <wbrowne@users.noreply.github.com>
Co-authored-by: Zoltán Bedi <zoltan.bedi@gmail.com>
2021-03-08 07:02:49 +01:00
Arve Knudsen
c2cad26ca9
Chore: Disable default golangci-lint filter ( #29751 )
...
* Disable default golangci-lint filter
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
* Chore: Fix linter warnings
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-12-15 09:32:06 +01:00
Arve Knudsen
574553ec7b
Chore: Fix issues found by staticcheck ( #28802 )
...
* Fix linting issues
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-11-05 11:29:39 +01:00
Arve Knudsen
a078e40238
Settings: Rename constants/variables to follow Go naming standards ( #28002 )
...
* settings: Rename constants/variables to follow Go naming standards
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-10-02 15:45:45 +02:00
Arve Knudsen
a5d9196a53
Chore/fix lint issues ( #27704 )
...
* Chore: Fix linting issues
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-09-22 16:22:19 +02:00
Arve Knudsen
50ebbb625e
InfluxDB: Upgrade Go client, use data source HTTP client ( #27012 )
...
* InfluxDB: Upgrade Go client, use data source HTTP client
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
* Remove unnecessary Close
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-08-14 18:40:02 +02:00
Arve Knudsen
c63bbbaec3
InfluxDB: Close Flux query results ( #26917 )
...
* InfluxDB: Drop ctxhttp usage
* InfluxDB: Clean up code
* InfluxDB: Close query results
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-08-13 17:50:53 +02:00
Arve Knudsen
37c278c8f3
InfluxDB: Less chatty logging ( #26850 )
...
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-08-07 09:18:57 +02:00
Arve Knudsen
41d432b5ae
Chore: Enable whitespace linter ( #25903 )
...
Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
2020-07-06 20:17:28 +02:00
Ryan McKinley
8d1ed33e20
InfluxDB: different config UI for 1x vs 2x ( #25723 )
2020-06-22 13:03:34 -07:00
Marcus Efraimsson
bd8a04a6a5
InfluxDB: Fix invalid memory address or nil pointer dereference when schema is missing in URL ( #25565 )
...
Add guard if parsing url fails in influxdb backend data source.
Fixes #25242
2020-06-12 16:04:09 +02:00
Ryan McKinley
5f1f820bb9
Influx: Support flux in the influx datasource ( #25308 )
...
* add flux
* add token to datasource config editor
* add backend for flux
* make the interpolated query available in query inspector
* go mod tidy
* Chore: fixes a couple of strict null errors in influxdb plugin
Co-authored-by: kyle <kyle@grafana.com>
Co-authored-by: Lukas Siatka <lukasz.siatka@grafana.com>
2020-06-10 15:26:24 -04:00
zhulongcheng
2fff8f77dc
move log package to /infra ( #17023 )
...
ref #14679
Signed-off-by: zhulongcheng <zhulongcheng.me@gmail.com>
2019-05-13 08:45:54 +02:00
Stephen SORRIAUX
3866839b19
Datasources: add support for POST HTTP verb for InfluxDB ( #16690 )
...
A new parameter `queryMode` is added to the InfluxDB datasource to provide a way to use POST instead of GET when querying the database. This prevents to get any error when querying the database with a heavy request.
Default configuration is kept to GET for backward compatibility. Tests and documentation have been added for this new behaviour.
2019-05-02 15:30:37 +02:00
Andrej Ocenas
66f6e16916
Security: Store datasource passwords encrypted in secureJsonData ( #16175 )
...
* Store passwords in secureJsonData
* Revert unnecessary refactors
* Fix for nil jsonSecureData value
* Remove copied encryption code from migration
* Fix wrong field reference
* Remove migration and provisioning changes
* Use password getters in datasource proxy
* Refactor password handling in datasource configs
* Add provisioning warnings
* Update documentation
* Remove migration command, moved to separate PR
* Remove unused code
* Set the upgrade version
* Remove unused code
* Remove double reference
2019-04-15 11:11:17 +02:00
Marcus Efraimsson
6b8e3122f8
chore(influx): no point of reading response when bad status ( #16212 )
...
There's no point in reading the body response without using
the result so removing it.
Fixes #9199
Ref #16207
2019-03-26 12:10:24 +07:00
Ramon Carvalho Maciel
d791a6211d
fix(InfluxDB): Reads body and close request body even for error status codes ( #16207 )
2019-03-25 17:42:26 +01:00
Mario Trangoni
e351e6e211
pkg/tsdb/influxdb/influxdb.go: Fix surrounding loop is unconditionally terminated.
...
See,
$ gometalinter --vendor --deadline 6m --disable-all --enable=megacheck ./...
pkg/tsdb/influxdb/influxdb.go:106:3⚠️ the surrounding loop is unconditionally terminated (SA4004) (megacheck)
2018-11-09 19:40:07 +01:00
bergquist
ed661767f8
follow go idiom and return error as second param
2017-09-21 18:04:16 +02:00
bergquist
a45e2ec9c3
context is reserved for go's context
2017-09-21 15:23:34 +02:00
bergquist
16b5b9f6be
make ds a param for Query
2017-09-21 15:09:14 +02:00
bergquist
7f9f388293
rename executor into tsdbqueryendpoint
2017-09-21 15:02:17 +02:00
bergquist
0229d28d64
remove unused structs
2017-09-21 15:02:17 +02:00
bergquist
55f1b36e31
refactor response flow
2017-09-21 15:02:17 +02:00
Carl Bergquist
2c7adccf12
Use cache for http.client in tsdb package. ( #6833 )
...
* datasource: move caching closer to datasource struct
* tsdb: use cached version of datasource http transport
closes #6825
2016-12-07 11:10:42 +01:00
bergquist
f70d7ff3a3
fix(influxdb): align tsdb.influxdb with dataproxy
...
ref #6784
2016-12-02 21:10:29 +01:00
bergquist
e04d27c0b0
fix(influxdb): return internal influxdb errors
...
ref #6523
2016-11-11 08:47:53 +01:00
bergquist
f924b241ae
tech(influxdb): refactor query builder
...
trying to reduce the amounts of moving parts for influxdb
2016-11-10 14:38:07 +01:00
bergquist
ecba23e883
Merge branch 'master' into influxdb_alias_seriename
2016-11-10 12:22:17 +01:00
bergquist
82e1d3f6aa
feat(influxdb): disable debug logging in appmode
2016-11-09 14:48:05 +01:00
bergquist
c897d39d5e
feat(influxdb): add support for serie alias replacement
...
ref #6510
2016-11-09 10:22:11 +01:00
bergquist
98a7bf181a
tech(influxdb): close body reader
2016-11-08 19:19:49 +01:00
bergquist
d4bc92b267
feat(tsdb): default tsdb httpclient
2016-11-02 08:51:34 +01:00
bergquist
9429434cb5
feat(influxdb): use database auth if provided
...
closes #6310
2016-10-18 15:12:04 +02:00
bergquist
4144eacc24
feat(influxdb): start parsing interval parameters
2016-10-13 11:42:51 +02:00
bergquist
8d96262106
chore(tsdb): tidy up code
2016-10-10 11:58:06 +02:00