The log rows were mutated in the store, what resulted in wrong deduplication results as well as made the selector memoization quirky - for "the same results" the selector was running twice.
* do not mutate seriesList in mergeSeriesByTime
* extendedseriesList -> extendedDatapointsList
* remove toString() from datapoints, since the value can be null
- changed log parser API to be more semantic: getting fields, getting values
- regexps become an implementation detail of parser and are no longer part of the API
- improved JSON parser to not be tripped by nested quotation marks
- improved JSON parser to support numbers
- added more tests
Lazily parse lines and display stats for field when clicked on.
- log line parsers for JSON (basic), and logfmt
- delayed parsing in case user moves to other line
- reuse label stats for field stats
- added dedup switches to logs view
- strategy 'exact' matches rows that are exact (except for dates)
- strategy 'numbers' strips all numbers
- strategy 'signature' strips all letters and numbers to that only whitespace and punctuation remains
- added duplication indicator next to log level
Using `Number.prototype.toLocaleString()` has the unexpected behavior of truncating anything
exceeding 3 decimal digits on floats.
Additionally, it introduces inconsistencies (comma vs period separators) which could make processing the
output CSV harder than it could be. The proposed solution here is to simply let numbers be cast
automatically via string concatenation.
Fixes#13929
- Extracted table panel's merge logic to combine multiple tables into one
- Put the merge logic into the table model as it merges multiple table
models
- make use of merge in Explore's table query response handler
- copied tests over to table model spec, kept essential tests in
transformer spec
- queries are saved to localstorage history array
- one history per datasource type (plugin ID)
- 100 items kept with timestamps
- history suggestions can be pulled up with Ctrl-SPACE
Currently if a null appears in a table column, for instance in data
returned by postgres, sorting on that gives an arbitrary order. This
is due to null being neither greater or less than any string, which
makes the sort unstable.
Change the table sort function to compare on nullness first. Note
this is a slight behaviour change for numbers, which would otherwise
treat null and 0 as equivalent.
Signed-off-by: Martin Packman <gzlist@googlemail.com>
* Fix bar width issue in aligned prometheus queries
This was broken because null values were filled in with unaligned times.
* use aligned times for result transformation
* add tests
An earlier version of this fix aligned the times again in the transformer, but
I think it's safe to only deal with aligned times in the response.
* Fixed prometheus heatmap tranformer test
The interval needs to be 1 to prevent step alignment.
* refactor: tracing service refactoring
* refactor: sqlstore to instance service
* refactor: sqlstore & registory priority
* refactor: sqlstore refactor wip
* sqlstore: progress on getting tests to work again
* sqlstore: progress on refactoring and getting tests working
* sqlstore: connection string fix
* fix: not sure why this test is not working and required changing expires
* fix: updated grafana-cli
* Set fillColor in bars on load and on color change
* Change bar fill color on color override
* Added test for series overrides
* Moved bars fill color setting into time_series. Fixed issue with prev commit where you could not show bars because of series overrides.
* fix: initial cleanup and implementation
* feat: finish special character escaping
* feat: updates fileExport to generate RFC-4180 compliant CSV
* chore: replace html decoder with the lodash version and final cleanup
* fix: restore character html decoding
Change the front end route for folders to /dashboards/f/<uid>/<slug of folder title>.
Use new route for deleting dashboard/folder by uid.
Retrieve dashboard/folder by uid when moving or deleting dashboards/folders.
bulk delete dashboards synchronously
moved bulk delete and move dashboards to backend_srv
better error handling/messages when moving and deleting folders/dashboards
fixes#10181
Use slug and url instead of uri
Check/uncheck a folder will check/uncheck all its children dashboards
Allow to move dashboards when there are both folders and dashboards selected
Hide the header of section when only managing one folder
#10081#10181
* tech: investigating karma + jest mix
* tech: migrating tests to jest
* tech: moved anoter test file to jest
* test: migrated two more test files to jest
* test: updated readme and made test fail to verify that it causes CI build failure
* tech: added code coverage for jest tests
* tech: testing codecov coverage
* tech: migrated more tests
* tech: migrated template srv to typescript and the tests to jest
* tech: minor build fix
* tech: build fixes
* build: another attempt at fixing go test with coverage
* webpack poc, this is not going to work for plugins, dam
* tech: webpack and systemjs for plugins starting to work
* tech: webpack and systemjs combo starting to work
* tech: webpack + karma tests progress
* tech: webpack + karma progress
* tech: working on tests
* tech: webpack
* tech: webpack + karma, all tests pass
* tech: webpack + karma, all tests pass
* tech: webpack all tests pass
* webpack: getting closer
* tech: webpack progress
* webpack: further build refinements
* webpack: ng annotate fixes
* webpack: optimized build fix
* tech: minor fix for elasticsearch
* tech: webpack + ace editor
* tech: restored lodash move mixin compatability
* tech: added enzyme react test and upgraded to react v16
* tech: package version fix
* tech: added testdata to built in bundle
* webpack: sass progress
* tech: prod & dev build is working for the sass
* tech: clean up unused grunt stuff and moved to scripts folder
* tech: added vendor and manifest chunks, updated readme and docs
* tech: webpack finishing touches