Commit Graph

437 Commits

Author SHA1 Message Date
Leonard Gram
3b03dce3c2 mssql: timeGroup fill support added. 2018-03-15 15:06:54 +01:00
Marcus Efraimsson
faf9e3f722 mssql: add timeGroup integration test 2018-03-15 14:26:53 +01:00
Leonard Gram
571556e1d8 mssql: adds fill to timeGroup macro. 2018-03-15 13:11:26 +01:00
Marcus Efraimsson
3d0f97aab9 mssql datasource: wip 2018-03-15 09:51:29 +01:00
Marcus Efraimsson
c87752102a mssql datasource: support for timeGroup macro function 2018-03-13 22:49:49 +01:00
Marcus Efraimsson
57d46a706c mssql datasource: additional data type tests 2018-03-13 19:54:29 +01:00
Marcus Efraimsson
d4beee2bb0 Merge branch 'master' into mssql_datasource 2018-03-13 16:03:02 +01:00
Carl Bergquist
a589f701ad
Merge pull request #10925 from mtanda/cw_high_resolution
(cloudwatch) support high resolution query
2018-03-08 18:06:08 +01:00
Mitsuhiro Tanda
eecbdc89eb fix, set default highResolution setting 2018-03-08 01:18:11 +09:00
bergquist
cb223ee563 removes commented code 2018-03-07 16:40:24 +01:00
Sven Klemm
4904a051cf use net/url to generate postgres connection url 2018-03-05 16:06:04 +01:00
Sven Klemm
4e826ff8f7 remove spaces around arguments of macros 2018-03-02 19:24:15 +01:00
Sven Klemm
f1ba9137c0 remove spaces around arguments before calling macro expansion 2018-03-02 19:20:30 +01:00
Sven Klemm
0f931f9e5e Merge remote-tracking branch 'upstream/master' into macroengine-interpolate 2018-03-01 18:01:54 +01:00
Daniel Lee
f959ba9bcf influxdb: escape backslashes in tag values (for alerting)
Closes #10957. Backslash escaping was already implemented on the
frontend but does not work for queries executed on the backend.
2018-02-19 10:02:14 +01:00
Mitsuhiro Tanda
18c54a9341 support cloudwatch high resolution query 2018-02-15 23:35:01 +09:00
Sven Klemm
ebbc079853 improve error message for invalid/unknown datatypes (#10834) 2018-02-14 15:21:00 +01:00
Mitsuhiro Tanda
60b30d3e9a add AWS/States Rekognition (#10890)
* added AWS/States

* added Rekognition
2018-02-14 15:14:38 +01:00
hannes
43e6ea95e0 Cloudwatch: add support for multi instances (#10570)
* cloudwatch: fix ebs_volume_ids by create a client-session before call ec2:DescribeInstances.

* cloudwatch: add support for multi instanceIds on call ebs_volume_ids.
2018-01-24 15:41:42 +01:00
hannes
d82af23f1c cloudwatch: fix ebs_volume_ids by create a client-session before call ec2:DescribeInstances. (#10566) 2018-01-23 12:57:05 +01:00
Torkel Ödegaard
4f59d229fe fix: cloudwatch corrected error handling so original error is not thrown away 2018-01-19 09:24:44 +01:00
Daniel Lee
6d13645206 mysql: update to use ColumnTypes interface in new version
The custom code in vendor is not needed anymore and most of the
mapping code can be replaced.
2018-01-18 11:50:16 +01:00
bergquist
a183ea97bb moves datasource plugin model to grafana/grafana_plugin_model 2018-01-17 13:21:42 +01:00
bergquist
5499f4910c Merge branch 'master' into backend_plugins
* master: (117 commits)
  fix: share snapshot controller was missing ngInject comment, fixes #10511
  Use URLEncoding instead of StdEncoding to be sure state value will be corectly decoded (#10512)
  Optimize metrics and notifications docs
  Optimize cli and provisioning docs
  docs: Guide for IIS reverse proxy
  changelog: adds note about closing #9645
  telegram: Send notifications with an inline image
  telegram: Switch to using multipart form rather than JSON as a body
  telegram: Fix a typo in variable name
  fix: alert list pause/start toggle was not working properly
  fix template variable selector overlap by the panel (#10493)
  dashboard: Close/hide 'Add Panel' before saving a dashboard (#10482)
  fix: removed unused param
  Fix variables values passing when both repeat rows and panels is used (#10488)
  moved angular-mocks out of dependencies
  ux: minor change to alert list page
  ux: minor word change to alert list
  fix: updated snapshot test
  Add eu-west-3 in cloudwatch datasource default's region (#10477)
  fix: Make sure orig files are not added to git again #10289
  ...
2018-01-15 10:27:12 +01:00
Leonard Gram
b63c834a4b Adds Table in backend datasource contract. 2018-01-15 09:41:44 +01:00
bergquist
9e942f1a6d Adds Tables types to protobuf 2018-01-11 15:34:07 +01:00
bergquist
ce4beb730d Review tsdb protobuf contract 2018-01-11 15:01:49 +01:00
bergquist
ebd8677607 moves plugin proxy to plugin package 2018-01-10 12:11:57 +01:00
bergquist
e6921a6a01 removes commented code 2018-01-09 15:25:36 +01:00
Oleksandr Kushchenko
5c94daa011 Add AWS/AmazonMQ namespace metrics to CloudWatch tsdb (#10407) 2018-01-03 11:11:31 +01:00
Ali
de22e793d8
Merge branch 'master' into master 2018-01-03 10:33:54 +03:00
bergquist
05362a9666 plugins: restart killed plugins 2017-12-22 15:40:45 +01:00
bergquist
4aeef32073 query result should be a map 2017-12-22 14:40:38 +01:00
bergquist
e234cf5b18 prom: removes limitation of one query per tsdb call 2017-12-22 12:22:42 +01:00
Carl Bergquist
8b37e27dde use int64 for timestamps 2017-12-20 16:03:53 +01:00
Carl Bergquist
8a7c455697 Merge branch 'master' into backend_plugins
* master: (48 commits)
  fix: unit test fixed
  prettier: change to single quoting
  ux: minor name change to search sections
  db: fix postgres regression when comparing boolean columns/values (#10303)
  dashboard: delete row improvements
  fix missing comma in documentation output example
  fix broken link (#10291)
  minor fixes and formatting after review
  dashfolders: use validation service for folder creation and dashboard import. #10197
  dashfolders: support creating new folder when moving dashboards. #10197
  dashfolders: support creating new folder when saving a dashboard. #10197
  dashfolders: support creating new folder in dashboard settings. #10197
  dashfolders: support creating new folder from the folder picker. #10197
  tech: ran prettier on all scss files
  tech: ran pretttier on all typescript files
  search: closes dash search when selecting current dashboard (#10285)
  fix: Original dashboard link from snapshot should be an a-tag, not a button (#10269) (#10283)
  dashboard: fixes #10262
  added new to new dahsboard and folder
  test: Update test with new component signature
  ...
2017-12-20 14:20:33 +01:00
Carl Bergquist
cef3800c33 fixes invalid valud/timestamp order 2017-12-20 14:20:08 +01:00
Scott Ernst
fcf1ff10d2 Kinesis Metric Capitalization
Fixes the capitalization of the AWS/Kinesis ShardId metric, which
was incorrectly specified as "ShardID" instead of "ShardId" as
specified in the AWS documentation:

http://docs.aws.amazon.com/streams/latest/dev/monitoring-with-cloudwatch.html
2017-12-15 12:44:13 -06:00
bergquist
8573f73d72 Merge branch 'master' into backend_plugins
* master: (584 commits)
  prometheus: change default resolution to 1/1
  fix: viewers can edit now works correctly
  fix: fixed minor ux and firefox issues, fixes #10228
  ux: minor fixes
  profile: use name or fallback for profile page
  fix: sidemenu profile main text is now username instead of name
  build: update master version to 5.0.0-pre1
  dashfolder: change to migration text
  ux:s sidemenu icon rules
  teams: add team count when searching for team
  changed background color for infobox and new blues in light theme, light theme now uses blue-dark in panel query (#10211)
  ux: fixed navbar issue when sidemenu closes
  ux: minor position change for layout selector, fixes #10217
  fix: view json from share modal now works, #10217
  ux: used new add data sources icon
  dashfolders: styling of selected filters
  dashfolders: styling of selected filters
  dashfolders: fix moving plugin dashboard to folder
  changelog: adds note about closing #9170
  dashfolders: fix folder selection dropdown in dashboard settings
  ...
2017-12-15 14:34:55 +01:00
bergquist
7c0fc59dfb execute process directly instead of creating sub shell 2017-12-13 17:58:50 +01:00
linux chips
6e7a067857 adding support for sgl native time datatypes 2017-12-12 23:43:24 +03:00
Carl Bergquist
ea2f65b4c3
Merge pull request #10110 from bwhaley/master
Fixes bug in cloudwatch regarding credentials
2017-12-12 10:16:53 +01:00
bergquist
1af4f7a1b4 backend plugins: dont swallow errors 2017-12-11 13:16:16 +01:00
bergquist
026eb9ac36 backend plugins: cleanup protobuf files 2017-12-11 13:09:10 +01:00
bergquist
7f68c2a53d backend plugins: add more datasource params 2017-12-11 12:53:01 +01:00
bergquist
48e7f866f6 code style 2017-12-11 11:26:36 +01:00
bergquist
a4748d82ab Merge branch 'master' into backend_plugins
* master:
  changelog: adds note about closing #10131
  Explicitly specify default region in CloudWatch datasource (#9440)
  wait for all sub routines to finish
  changelog: adds ntoe about closing #10111
  postgres: change $__timeGroup macro to include "AS time" column alias (#10119)
  fixes broken test
  Solves problem with Github authentication restriction by organization membership when the organization's access policy is set to "Access restricted". "Access restricted" policy should not stop user to authenticate.
2017-12-11 10:43:41 +01:00
Mikael Olenfalk
8e7166b5c4 Explicitly specify default region in CloudWatch datasource (#9440)
The datasource uses the default region in the query if the region
is "" in the settings. However setting the region to an empty string
is almost impossible and rendered incorrectly.

This commit introduces a special value "default" for region which
is shown in the drop down and is translated to the default region
of the data source when performing queries.
2017-12-11 09:37:27 +01:00
Sven Klemm
cb15d9cbdd add missing value fill code to mysql datasource 2017-12-10 19:50:01 +01:00
Sven Klemm
6cdd901ec6 fix typo 2017-12-10 12:40:09 +01:00
Sven Klemm
c1282e8ea8 implement missing value fill functionality for postgres 2017-12-10 11:42:55 +01:00
Sven Klemm
e2a3590d8b allow optional 3rd argument to timeGroup to control filling missing
values
2017-12-10 09:59:33 +01:00
Sven Klemm
b86a42fffe pass tsdbQuery to transformToTimeSeries and transformToTable to get
access to selected frontend timerange
2017-12-09 20:35:00 +01:00
Sven Klemm
b6df91d56b pass Query to MacroEngine Interpolate 2017-12-08 23:30:33 +01:00
Sven Klemm
ce809de1ed postgres: change $__timeGroup macro to include "AS time" column alias (#10119)
* change $__timeGroup macro to include column alias

* update docs and help text for $__timeGroup macro
2017-12-08 15:14:10 +01:00
Ben Whaley
51854ff4fa Fix go fmt 2017-12-07 16:10:13 +00:00
bergquist
e1d4bf2607 kill plugin processes when grafana shuts down 2017-12-07 16:59:35 +01:00
bergquist
a2d47427ba separate plugin impl and proto files 2017-12-07 16:33:36 +01:00
bergquist
0bc5bf53ce correct comments 2017-12-07 16:33:36 +01:00
bergquist
3f5daa5e58 add hclog wrapper for grafanas logger in plugins 2017-12-07 16:33:36 +01:00
bergquist
0f6c470e03 add go-plugin deps to vendor 2017-12-07 16:33:36 +01:00
bergquist
a97360ab27 initial version of proto files 2017-12-07 16:32:17 +01:00
Ben Whaley
fe88658bdd Resolves grafana/grafana:#9309 2017-12-07 03:43:32 +00:00
Sven Klemm
c80eadcdf4 handle native postgres datetime types in annotation queries (#9986) 2017-12-06 18:12:24 +01:00
Sven Klemm
373389c920 treat any text column in timeseries query as metric name unless column (#9985)
named metric is present
2017-12-06 18:04:33 +01:00
linux chips
5114b1f792 fixing a few fromattings 2017-12-06 10:32:20 +03:00
bergquist
35232a77e6 removes unused properties
the dsType property caused some confusion about what datasource is
beeing used. I just removed it since it not beeing used.

closes #10072
2017-12-05 08:26:43 +01:00
linux chips
6f3a62d299 add _tests for mssql data source 2017-12-03 21:56:21 +03:00
linux chips
c75f9a1923 MSSQL Data Source 2017-12-02 14:40:12 +03:00
bergquist
9282182805 influxdb: pass tags to alerting from influxdb client
closes #10046
2017-12-01 16:16:49 +01:00
Andrei Kalasok
68d4211c50 grafana-10039: fix query time range ends in the past 2017-11-30 15:50:35 +01:00
Daniel Lee
5dd9582520 mysql: add data source support for Azure MySql
Fixes #9649
2017-11-21 13:21:19 +01:00
Sven Klemm
26ab25b7c0 dont loose subsecond precision when dealing with timestamp or (#9851)
timestamptz
2017-11-15 14:50:32 +01:00
Daniel Lee
b2fbb2691b sql: small fix to error handling 2017-11-15 13:57:33 +01:00
Carl Bergquist
5d6ed6c45f
prom: add support for default step param (#9866)
Alerting for prometheus have been depending on the step parameter from each query.
In https://github.com/grafana/grafana/pull/9226 we changed the behavior for step in the
frontend which caused problems for alerting. This commit fixes that by introducing a default
min interval value so alerting always have something to depend on. 

closes #9777
2017-11-15 11:22:00 +01:00
Sven Klemm
9e6a7dcb90 properly escape components of connection string (#9850) 2017-11-15 10:55:08 +01:00
Sven Klemm
108f582ec4 sync documentation, add remark about to_timestamp and redshift (#9841) 2017-11-14 11:33:55 +01:00
Mitsuhiro Tanda
52e1c4113b fix cloudwatch ec2_instance_attribute (#9718)
* fix cloudwatch ec2_instance_attribute

* add test

* minor fix
2017-11-13 13:07:46 +01:00
Carl Bergquist
c44f6e2ec2
Merge pull request #9854 from drenalin23/drenalin-add-networkelb-cloudwatch
Add AWS/NetworkELB to cloudwatch definitions
2017-11-13 07:50:45 +01:00
Mitsuhiro Tanda
6488ccd113 return empty array for no datapoints 2017-11-12 00:48:54 +09:00
Scott Nelson Windels
343143e95f Add AWS/NetworkELB to cloudwatch definitions 2017-11-10 15:13:09 -08:00
Carl Bergquist
17492c091a
Merge pull request #9752 from mtanda/cw_alias_fix
[bug fix] (cloudwatch) fix default alias format
2017-11-02 07:45:26 +01:00
Carl Bergquist
c783bdac39
Merge pull request #9753 from mtanda/cw_period
(cloudwatch) add period alias
2017-11-01 14:02:41 +01:00
Mitsuhiro Tanda
4a63d696ff fix default alias 2017-11-01 18:48:30 +09:00
Mitsuhiro Tanda
ebcb8be19a add period alias 2017-11-01 18:47:21 +09:00
Torkel Ödegaard
c3bd07f9b4 testdata: added manual entry mode to test data 2017-11-01 09:59:24 +01:00
Sven Klemm
a503c1d39c change default sslmode for postgres to verify-full (#9736) 2017-10-31 13:55:32 +01:00
Sven Klemm
34da0711ab add __timeGroup macro for mysql (#9596)
* add __timeGroup macro for mysql

* put example __timeGroup query in frontend help

* do __timeGroup interval parsing in go similar to mysql

* ignore whitespace around interval
2017-10-27 11:26:25 +02:00
Sven Klemm
b2d880c6de modify $__timeGroup macro so it can be used in select clause (#9527)
* modify $__timeGroup macro so it can be used in select clause

* fix $__interval_ms for postgres datasource

* use $__timeGroup macro in documentation

* fix annotation template query
remove title since its no longer used and add tags instead

* change __timeFilter macro to work on postgresql < 8.1 and redshift
2017-10-18 18:10:01 +02:00
Eric Dahl
888d608090 CloudWatch: Add ALB RequestCountPerTarget metric
This commit adds the new ALB metric `RequestCountPerTarget` which was
released in July 2017.
2017-10-14 21:50:23 -07:00
Daniel Lee
d1c9760fa8 Postgres Data Source (#9475)
* add postgresql datasource

* add rest of files for postgres datasource

* fix timeseries query, remove unused code

* consistent naming, refactoring

* s/mysql/postgres/

* s/mysql/postgres/

* couple more tests

* tests for more datatypes

* fix macros for postgres

* add __timeSec macro

* add frontend for postgres datasource

* adjust documentation

* fix formatting

* add proper plugin description

* merge editor changes from mysql

* port changes from mysql datasource

* set proper defaultQuery for postgres

* add time_sec to timeseries query
accept int for value for timeseries query

* revert allowing time_sec and handle int or float values as unix
timestamp for "time" column

* fix tslint error

* handle decimal values in timeseries query

* allow setting sslmode for postgres datasource

* use type switch for handling data types

* fix value for timeseries query

* refactor timeseries queries to make them more flexible

* remove debug statement from inner loop in type conversion

* use plain for loop in getTypedRowData

* fix timeseries queries

* adjust postgres datasource to tsdb refactoring

* adjust postgres datasource to frontend changes

* update lib/pq to latest version

* move type conversion to getTypedRowData

* handle address types cidr, inet and macaddr

* adjust response parser and docs for annotations

* convert unknown types to string

* add documentation for postgres datasource

* add another example query with metric column

* set more helpful default query

* update help text in query editor

* handle NULL in value column of timeseries query

* add __timeGroup macro

* add test for __timeGroup macro

* document __timeGroup and set proper default query for annotations

* fix typos in docs

* add postgres to list of datasources

* add postgres to builtInPlugins

* mysql: refactoring as prep for merging postgres

Refactors out the initialization of the xorm engine and the query logic
for an sql data source.

* mysql: rename refactoring + test update

* postgres:refactor to use SqlEngine(same as mysql)

Refactored to use a common base class with the MySql data source.

Other changes from the original PR:
- Changed time column to be time_sec to allow other time units in the
future and to be the same as MySQL
- Changed integration test to test the main Query method rather than
the private transformToTable method
- Changed the __timeSec macro name to __timeEpoch
- Renamed PostgresExecutor to PostgresQueryEndpoint

Fixes #9209 (the original PR)

* postgres: encrypt password on config page

With some other cosmetic changes to the config page:
- placeholder texts
- reset button for the password after it has been encrypted.
- default value for the sslmode field.

* postgres: change back col name to time from time_sec

* postgres mysql: remove annotation title

Title has been removed from annotations

* postgres: fix images for docs page

* postgres mysql: fix specs
2017-10-10 15:19:14 +02:00
Mitsuhiro Tanda
8d6513a564 fix cloudwatch alert bug 2017-09-29 13:45:11 +09:00
Mitsuhiro Tanda
5e88177f28 add debug log 2017-09-29 13:45:11 +09:00
Mitsuhiro Tanda
468e8c13ee move extend statistics handling code to backend 2017-09-29 13:45:11 +09:00
Mitsuhiro Tanda
6c375ed2cb fix assume role 2017-09-29 13:45:11 +09:00
Mitsuhiro Tanda
f3a2dc7c5f improve cloudwatch tsdb 2017-09-29 13:45:11 +09:00
Mitsuhiro Tanda
a21f53cf82 refactor cloudwatch code 2017-09-29 13:45:11 +09:00
Mitsuhiro Tanda
59cdd4d8d2 remove obsolete code 2017-09-29 13:45:11 +09:00
Mitsuhiro Tanda
fe9fca381c move cloudwatch crendential related code 2017-09-29 13:45:11 +09:00
Mitsuhiro Tanda
e1fe15e094 fix annotation query 2017-09-29 13:45:11 +09:00
Mitsuhiro Tanda
d98d8a404f fix dimension convertion 2017-09-29 13:45:11 +09:00
Mitsuhiro Tanda
c140d7aa06 re-implement annotation query 2017-09-29 13:45:11 +09:00
Mitsuhiro Tanda
8f3b060946 fix parameter format 2017-09-29 13:44:01 +09:00
Mitsuhiro Tanda
17445e0c98 fix alert feature 2017-09-29 13:44:01 +09:00
Mitsuhiro Tanda
8243ac39c2 fix parameter format 2017-09-29 13:44:01 +09:00
bergquist
fe1d395d79 refactor cloudwatch to support new tsdb interface 2017-09-29 13:44:01 +09:00
Mitsuhiro Tanda
1dcc51adce re-implement dimension_values() 2017-09-29 13:44:01 +09:00
Mitsuhiro Tanda
ec632bb9ed fix error message 2017-09-29 13:44:01 +09:00
Mitsuhiro Tanda
8fba6dcb0d re-implement ec2_instance_attribute() 2017-09-29 13:44:01 +09:00
Mitsuhiro Tanda
cf23734d7d re-implement ebs_volume_ids() 2017-09-29 13:44:01 +09:00
Mitsuhiro Tanda
e588b682fb import the change, https://github.com/grafana/grafana/pull/9268 2017-09-29 13:44:01 +09:00
Mitsuhiro Tanda
36a537a3ce fix conflict 2017-09-29 13:44:01 +09:00
Mitsuhiro Tanda
fa074249e4 fix test 2017-09-29 13:44:01 +09:00
Mitsuhiro Tanda
f590db1b78 move test code 2017-09-29 13:44:01 +09:00
Mitsuhiro Tanda
1d265e05c9 fix conflict 2017-09-29 13:44:01 +09:00
Mitsuhiro Tanda
fe3d3bc384 porting other suggestion 2017-09-29 13:44:01 +09:00
Mitsuhiro Tanda
feed90c0e2 re-implement get regions 2017-09-29 13:44:01 +09:00
Mitsuhiro Tanda
0c95148486 move the metric find query code 2017-09-29 13:44:01 +09:00
Mitsuhiro Tanda
62d84c1e14 (cloudwatch) move query parameter to 'parameters' 2017-09-29 13:44:01 +09:00
Mitsuhiro Tanda
110f157621 parse duration 2017-09-29 13:44:01 +09:00
Mitsuhiro Tanda
c6607f3fa7 remove offset for startTime 2017-09-29 13:44:01 +09:00
Mitsuhiro Tanda
dcb5ea58ce count up metrics 2017-09-29 13:44:00 +09:00
Mitsuhiro Tanda
39607d09d7 (cloudwatch) alerting 2017-09-29 13:44:00 +09:00
bergquist
3641e85233 testdata: add bucket scenarios for heatmap
these scenarios makes it easier debug panels based
on the same numbers without sharing datasource

ref #9332
2017-09-24 22:08:28 +02: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
c0260fd913 remove batch abstraction 2017-09-21 15:02:17 +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
bergquist
8c8fdadb78 trace failed executions 2017-09-18 11:08:58 +02:00
bergquist
e128310045 use tags instead of logs 2017-09-18 11:08:58 +02:00
bergquist
f160ad3bc8 add trace parameters for outgoing requests 2017-09-18 11:08:58 +02:00
bergquist
d6b8c6a2d2 add graphite bridge that support delta counters 2017-09-14 14:26:32 +02:00
wangguoliang
652fce7e76 Optimize some wrong usage and spelling
Signed-off-by: wgliang <liangcszzu@163.com>
2017-09-07 17:50:11 +08:00
mxlxm
c5400ffe76 mysql: use collation instead of charset (#9156)
- use charset would issue additional 'SET NAMES <VALUE>' queries, set
collation would be better. see: https://github.com/go-sql-driver/mysql#charset
2017-09-04 12:32:07 +02:00
Jonathan A. Sternberg
bdfbc2453f Use parenthesis to surround the selected tags for influxdb queries (#9131)
The generated queries when selecting multiple tags are incorrect. In
InfluxQL, `AND` has a higher precedence than `OR` so the condition:

    WHERE "hostname" = 'server1' OR "hostname" = 'server2' AND time > now() - 5m

This is parsed as if it were:

    WHERE "hostname" = 'server1' OR ("hostname" = 'server2' AND time > now() - 5m)

But the intention is to write a query like this:

    WHERE ("hostname" = 'server1' OR "hostname" = 'server2') AND time > now() - 5m

This change modifies the generated query so it surrounds a query with
multiple conditions in parenthesis so it doesn't conflict with the time
expression in an unexpected way.

This is currently not an issue because InfluxDB doesn't actually
evaluate the condition for the time expression correctly. It just looks
through the AST for anything that looks like a time expression and then
assumes the proper format of `AND` was used rather than validating that
it was used correctly.
2017-08-31 09:33:03 +02:00
Torkel Ödegaard
c92317bafa fix: fixed gofmt formating for #9091 2017-08-28 13:29:24 +02:00
pdoan017
3eea5d235d Added import for container/list 2017-08-24 15:42:54 -04:00
pdoan017
d6085755c4 Added series order according to query results
Raw query results would return as expected. But when appending new series to pointsBySeries map, order of keys is random. So I've added a list to keep track of series order. Should implement FIFO rules.
2017-08-24 15:38:36 -04:00
Daniel Lee
43fa852cc1 mysql: change logging from into to debug for scan 2017-08-09 19:33:09 +02:00
Daniel Lee
563795245a mysqlds: support for more column types
Includes integration test for most column types. Fixes #8918
2017-08-08 15:24:41 +02:00
Daniel Lee
2fb25d8fa4 mysqlds: add tests for new macros 2017-08-08 14:40:27 +02:00
Brad Lhotsky
a8ac215039 Add a few more MySQL macros:
* $__timeFrom() -> Returns the dashboard 'from' suitable for use querying
  against a MySQL TIMESTAMP field.
* $__timeTo() -> Returns the dashboard 'to' suitable for use querying
  against a MySQL TIMESTAMP field.
* $__unixEpochFiler(column) -> If you store timestamps as UNIX epoch's,
  this builds: column > 'from' AND column < 'to'
* $__unixEpochFrom() -> Returns the dashboard 'from' suitable for use querying
  against a MySQL integer field (UNIX epochs)
* $__unixEpochTo() -> Returns the dashboard 'to' suitable for use querying
  against a MySQL integer field (UNIX epochs)
2017-08-08 14:40:27 +02:00
Torkel Ödegaard
60da730c95 mysql: fix for TIME columns, fixes #8534 2017-06-23 12:55:40 -04:00
Daniel Lee
2479e51a6b mysql: Null value should not be considered as previous value
fixes #8655
2017-06-20 02:02:05 +02:00
Denis Doria
41d300f69d Fix timeInterval for mysql datasource (#8651)
* Fix timeInterval for mysql datasource

This changes the > to >= and the < to <=, so the intervals are inclusive.
This should fix the #8635

* Fix validation
2017-06-19 08:58:22 -04:00
Prasanna Gautam
6541ffe045 minor change: more accurate variable name (#8449) 2017-05-24 08:38:13 +02:00
Daniel Lee
e8b798914d mysql: adds mapping for int/long 2017-05-16 16:07:42 +02:00