API Reference@grafana/data

@grafana/data package

A library containing most of the core functionality and data types used in Grafana.

Classes

Class Description
AppendedVectors This may be more trouble than it is worth. This trades some computation time for RAM – rather than allocate a new array the size of all previous arrays, this just points the correct index to their original array values
AppPlugin
ArrayVector
AsNumberVector This will force all values to be numbers
BinaryOperationVector
CircularDataFrame This dataframe can have values constantly added, and will never exceed the given capacity
CircularVector Circular vector uses a single buffer to capture a stream of values overwriting the oldest value on add.This supports adding to the ‘head’ or ‘tail’ and will grow the buffer to match a configured capacity.
ConstantVector
CSVReader
DataFrameView (BETA) This abstraction will present the contents of a DataFrame as if it were a well typed javascript object Vector.
DataSourceApi The main data source abstraction interface, represents an instance of a data sourceAlthough this is a class, datasource implementations do not *yet* need to extend it. As such, we can not yet add functions with default implementations.
DataSourcePlugin
FieldCache
FieldConfigEditorBuilder Fluent API for declarative creation of field config option editors
FieldConfigOptionsRegistry
FormattedVector
GrafanaPlugin
IndexVector IndexVector is a simple vector implementation that returns the index value for each element in the vector. It is functionally equivolant a vector backed by an array with values: [0,1,2,…,length-1]
LanguageProvider
MutableDataFrame
PanelOptionsEditorBuilder Fluent API for declarative creation of panel options
PanelPlugin
Registry
SortedVector Values are returned in the order defined by the input parameter
SystemDateFormatsState

Enumerations

Enumeration Description
BinaryOperationID
ByNamesMatcherMode Mode to be able to toggle if the names matcher should match fields in provided list or all except provided names.
CoreApp
CSVHeaderStyle
DashboardCursorSync
DataQueryErrorType
DataTopic
DataTransformerID
ExploreMode
FieldColorModeId
FieldConfigProperty
FieldMatcherID
FieldType
FrameMatcherID Field name matchers
GrafanaThemeType
InternalTimeZones
LayoutModes
LiveChannelConnectionState
LiveChannelEventType
LoadingState Represent panel data loading state.
LogLevel Mapping of log level abbreviation to canonical log level. Supported levels are reduce to limit color variation.
LogsDedupDescription
LogsDedupStrategy
LogsMetaKind
LogsSortOrder
MatcherID
NodeGraphDataFrameFieldNames
NullValueMode
OrgRole
PluginErrorCode Describes error code returned from Grafana plugins API call
PluginIncludeType
PluginSignatureStatus Describes status of plugin signature
PluginSignatureType Describes level of plugin signature level
PluginState Describes plugins life cycle status
PluginType Describes type of plugin
ReducerID
ThresholdsMode Display mode
ValueMatcherID
VariableOrigin
VariableSuggestionsScope
VizOrientation

Functions

Function Description
addDurationToDate(date, duration)
addLogLevelToSeries(series, lineIndex)
anySeriesWithTimeField(data) Indicates if there is any time field in the array of data frames
applyFieldOverrides(options) Return a copy of the DataFrame with all rules applied
applyRawFieldOverrides(data) Return a copy of the DataFrame with raw data
booleanValueFormatter(t, f)
calculateFieldStats(rows, extractor)
calculateLogsLabelStats(rows, label)
calculateStats(values)
compareArrayValues(a, b, cmp) (BETA) Check if all values in two arrays match the compare funciton
compareDataFrameStructures(a, b, skipConfig) (BETA) Returns true if both frames have the same name, fields, labels and configs.
doStandardCalcs(field, ignoreNulls, nullAsZero)
eventFactory(name)
findCommonLabels(labelsSets) Returns a map labels that are common to the given label sets.
findHighlightChunksInText({ searchWords, textToHighlight, }) Adapt findMatchesInText for react-highlight-words findChunks handler. See https://github.com/bvaughn/react-highlight-words#props
findMatchesInText(haystack, needle) Returns a list of substring regexp matches.
findUniqueLabels(labels, commonLabels) Returns a map of labels that are in labels, but not in commonLabels.
formatLabels(labels, defaultValue, withoutBraces) Serializes the given labels to a string.
formattedValueToString(val)
getActiveThreshold(value, thresholds)
getColorForTheme(color, theme)
getColorFromHexRgbOrName(color, type)
getDataFrameRow(data, row) Wrapper to get an array from each field value
getDefaultRelativeTimeRange() Returns the default realtive time range.
getDefaultTimeRange()
getDisplayProcessor(options)
getDisplayValueAlignmentFactors(values)
getFieldColorMode(mode) (BETA)
getFieldColorModeForField(field) (BETA)
getFieldDisplayName(field, frame, allFrames)
getFieldMatcher(config) Resolves a field matcher from the registry for given config. Will throw an error if matcher can not be resolved.
getFlotPairs({ xField, yField, nullValueMode })
getFlotPairsConstant(seriesData, range) Returns a constant series based on the first value from the provide series.
getFrameDisplayName(frame, index) Get an appropriate display title
getFrameMatchers(config) Resolves a frame matcher from the registry for given config. Will throw an error if matcher can not be resolved.
getLogLevel(line) Returns the log level of a log line. Parse the line for level words. If no level is found, it returns LogLevel.unknown.Example: getLogLevel(‘WARN 1999-12-31 this is great’) // LogLevel.warn
getLogLevelFromKey(key)
getParser(line)
getRawDisplayProcessor()
getScaleCalculator(field, theme)
getValueFormat(id)
getValueFormats()
getValueFormatterIndex()
getValueMatcher(config) Resolves a value matcher from the registry for given config. Will throw an error if matcher can not be resolved.
guessFieldTypeForField(field) Looks at the data to guess the column type. This ignores any existing setting
guessFieldTypeFromNameAndValue(name, v) Given a name and value, this will pick a reasonable field type
guessFieldTypeFromValue(v) Given a value this will guess the best column typeTODO: better Date/Time support! Look for standard date strings?
hasLinks(field)
intervalToAbbreviatedDurationString(interval, includeSeconds) intervalToAbbreviatedDurationString convers interval to readable duration string
isBooleanUnit(unit)
isLiveChannelJoinEvent(evt)
isLiveChannelLeaveEvent(evt)
isLiveChannelMessageEvent(evt)
isLiveChannelStatusEvent(evt)
isValidDate(dateString)
locale(value, decimals)
localTimeFormat(options, locale, fallback) localTimeFormat helps to generate date formats for momentjs based on browser’s locale
makeClassES5Compatible(ES6Class) (BETA) Proxies a ES6 class so that it can be used as a base class for an ES5 class
mapInternalLinkToExplore(options)
matchAllLabels(expect, against) Check that all labels exist in another set of labels
outerJoinDataFrames(options) This will return a single frame joined by the first matching field. When a join field is not specified, the default will use the first time field
parseDuration(duration)
parseFlags(text) Converts any mode modifiers in the text to the Javascript equivalent flag
parseLabels(labels) Returns a map of label keys to value from an input selector string.Example: parseLabels('{job="foo", instance="bar"}) // {job: "foo", instance: "bar"}
readCSV(csv, options)
reduceField(options)
renderMarkdown(str, options)
reverseDataFrame(data) Returns a copy with all values reversed
scaledUnits(factor, extArray)
serializeStateToUrlParam(urlState, compact)
shallowCompare(a, b, cmp) (BETA) Checks if two objects are equal shallowly
simpleCountUnit(symbol)
sortDataFrame(data, sortIndex, reverse)
sortThresholds(thresholds) Sorts the thresholds
stringFormater(value)
stringStartsAsRegEx(str)
stringToJsRegex(str)
stringToMs(str)
toCSV(data, config)
toDataFrame(data) Inspect any object and return the results as a DataFrame
toDataFrameDTO(data) Returns a copy that does not include functions
toFixed(value, decimals)
toFixedScaled(value, decimals, ext)
toFixedUnit(unit, asPrefix)
toFloatOrUndefined(value)
toIntegerOrUndefined(value)
toNumberString(value)
transformDataFrame(options, data) Apply configured transformations to the input data
updateDatasourcePluginOption(props, key, val)
validateFieldConfig(config) This checks that all options on FieldConfig make sense. It mutates any value that needs fixed. In particular this makes sure that the first threshold value is -Infinity (not valid in JSON)
vectorator(vector) Use functional programming with your vector

Interfaces

Interface Description
AbsoluteTimeRange
AnnotationEvent
AnnotationEventFieldMapping
AnnotationQuery This JSON object is stored in the dashboard json model.
AnnotationQueryRequest Options passed to the datasource.annotationQuery method. See docs/plugins/developing/datasource.md
AnnotationSupport Since Grafana 7.2This offers a generic approach to annotation processing
AppEvent
ApplyFieldOverrideOptions
AppPluginMeta
AppRootProps
BasicValueMatcherOptions Describes a basic value matcher option that has a single value.
BuildInfo Describes the build information that will be available via the Grafana configuration.
BusEventType
ByNamesMatcherOptions Options to instruct the by names matcher to either match all fields in given list or all except the fields in the list.
CartesianCoords2D A coordinate on a two dimensional plane.
Column
ConfigOverrideRule
CreatePlotOverlay
CSVConfig
CSVOptions
CSVParseCallbacks
DataConfigSource Describes and API for exposing panel specific data configurations.
DataFrame
DataFrameDTO Like a DataFrame, but fields may be a FieldDTO
DataLink Link configuration. The values may contain variables that need to be processed before showing the link to user.TODO: <T extends DataQuery> is not strictly true for internal links as we do not need refId for example but all data source defined queries extend this so this is more for documentation.
DataLinkClickEvent Callback info for DataLink click events
DataLinksFieldConfigSettings
DataQuery These are the common properties available to all queries in all datasources Specific implementations will extend this interface adding the required properties for the given context
DataQueryError
DataQueryRequest
DataQueryResponse
DataQueryTimings
DataSourceConstructor
DataSourceInstanceSettings Frontend settings model that is passed to Datasource constructor. This differs a bit from the model above as this data model is available to every user who has access to a data source (Viewers+). This is loaded in bootData (on page load), or from: /api/frontend/settings
DataSourceJsonData
DataSourcePluginComponents
DataSourcePluginMeta
DataSourcePluginOptionsEditorProps
DataSourceSelectItem
DataSourceSettings Data Source instance edit model. This is returned from: /api/datasources
DataTransformerConfig
DataTransformerInfo Function that transform data frames (AKA transformer)
DateTime
DateTimeBuiltinFormat
DateTimeDuration
DateTimeLocale
DateTimeOptions The type describing date and time options. Used for all the helper functions available to parse or format date and time values.
DateTimeOptionsWhenParsing The type that describes options that can be passed when parsing a date and time value.
DateTimeOptionsWithFormat The type describing the options that can be passed to the dateTimeFormat helper function to control how the date and time value passed to the function is formatted.
DecimalInfo
Dimension
Dimensions2D 2d object dimensions.
DisplayValue
DisplayValueAlignmentFactors These represents the display value with the longest title and text. Used to align widths and heights when displaying multiple DisplayValues
DynamicConfigValue
ExploreQueryFieldProps
FeatureToggles Describes available feature toggles in Grafana. These can be configured via the conf/custom.ini to enable features under development or not yet available in stable version.
Field
FieldCalcs
FieldColor
FieldColorConfigSettings
FieldColorMode (BETA)
FieldConfig Every property is optionalPlugins may extend this with additional properties. Something like series overrides
FieldConfigEditorConfig
FieldConfigEditorProps
FieldConfigPropertyItem
FieldConfigSource
FieldDisplay
FieldDTO Like a field, but properties are optional and values may be a simple array
FieldMatcherInfo
FieldOverrideContext
FieldOverrideEditorProps
FieldReducerInfo
FieldSparkline
FieldWithIndex
FlotDataPoint
FormattedValue
FrameMatcherInfo
GetFieldDisplayValuesOptions
GrafanaConfig Describes all the different Grafana configuration values available for an instance.
GrafanaTheme
GrafanaTheme2 (BETA) Next gen theme model introduced in Grafana v8.
GrafanaThemeCommons
GraphSeriesXY View model projection of a series
GroupedTimeZones
HistoryItem
IntervalValues
Labels
LegacyEmitter
LegacyEventHandler
LegacyGraphHoverEventPayload
LicenseInfo Describes the license information about the current running instance of Grafana.
LinkModel Processed Link Model. The values are ready to use
LinkModelSupplier Provides a way to produce links on demandTODO: ScopedVars in in GrafanaUI package!
LiveChannelJoinEvent
LiveChannelLeaveEvent
LiveChannelMessageEvent
LogLabelStatsModel
LogRowModel
LogSearchMatch
LogsMetaItem
LogsModel
LogsParser
MatcherConfig
MetadataInspectorProps
MetricFindValue
MutableVector Vector with standard manipulation functions
NavModel Interface used to describe different kinds of page titles and page navigation. Navmodels are usually generated in the backend and stored in Redux.
NavModelBreadcrumb
NavModelItem
NumberFieldConfigSettings
NumericRange
PanelData
PanelEditorProps
PanelModel
PanelOptionsEditorConfig
PanelOptionsEditorItem
PanelOptionsEditorProps
PanelPluginDataSupport
PanelPluginMeta
PanelProps
PluginBuildInfo
PluginConfigPage
PluginConfigPageProps
PluginDependencies
PluginError Describes error returned from Grafana plugins API call
PluginInclude
PluginMeta
PluginMetaInfo
QueryEditorHelpProps
QueryEditorProps
QueryFix
QueryFixAction
QueryHint
QueryResultBase
QueryResultMeta
QueryResultMetaNotice QueryResultMetaNotice is a structure that provides user notices for query result data
QueryResultMetaStat
RangeValueMatcherOptions Describes a range value matcher option that has a to and a from value to be able to match a range.
RawTimeRange
ReadWriteVector Apache arrow vectors are Read/Write
ReduceDataOptions Options for how to turn DataFrames into an array of display values
RegexpOrNamesMatcherOptions
RegistryItem
RegistryItemWithOptions
RenameByRegexTransformerOptions Options for renameByRegexTransformer
RenderMarkdownOptions
ScopedVar
ScopedVars
ScreenshotInfo
SelectableValue Used in select elements
SelectFieldConfigSettings
SetFieldConfigOptionsArgs (BETA)
SliderFieldConfigSettings
StandardEditorContext
StandardEditorProps
StandardEditorsRegistryItem
StatsPickerConfigSettings
StringFieldConfigSettings
SystemDateFormatSettings
TableData
TextMatch
ThemeBreakpoints (BETA)
ThemeColors (BETA)
ThemeShadows (BETA)
ThemeShape (BETA)
ThemeSpacing (BETA) The different signatures imply different meaning for their arguments that can’t be expressed structurally. We express the difference with variable names. tslint:disable:unified-signatures
ThemeTypography (BETA)
ThemeTypographyVariant
Threshold
ThresholdsConfig Config that is passed to the ThresholdsEditor
ThresholdsFieldConfigSettings
TimeOption
TimeOptions
TimeRange
TimeSeries
TimeZoneCountry
TimeZoneInfo
TraceSpanRow This describes the structure of the dataframe that should be returned from a tracing data source to show trace in a TraceView component.
TransformerRegistryItem
TransformerUIProps
UnitFieldConfigSettings
UserOrgDTO
ValueFormat
ValueFormatCategory
ValueFormatterIndex
ValueLinkConfig
ValueMappingFieldConfigSettings
ValueMatcherInfo Registry item to represent all the different valu matchers supported in the Grafana platform.
ValueMatcherOptions Describes a empty value matcher option.
VariableModel
VariableSuggestion
Vector
YAxis

Namespaces

Namespace Description
arrayUtils
colorManipulator
dateMath
rangeUtil

Variables

Variable Description
AppEvents
binaryOperators
booleanOverrideProcessor
checkLogsError
classicColors
createDimension
DataLinkBuiltInVars
dataLinksOverrideProcessor
dateTime
dateTimeAsMoment
dateTimeFormat Helper function to format date and time according to the specified options. If no options are supplied, then default values are used. For more details, see DateTimeOptionsWithFormat.
dateTimeFormatISO Helper function to format date and time according to the standard ISO format e.g. 2013-02-04T22:44:30.652Z. If no options are supplied, then default values are used. For more details, see DateTimeOptionsWithFormat.
dateTimeFormatTimeAgo Helper function to return elapsed time since passed date. The returned value will be formatted in a human readable format e.g. 4 years ago. If no options are supplied, then default values are used. For more details, see DateTimeOptions.
dateTimeFormatWithAbbrevation Helper function to format date and time according to the Grafana default formatting, but it also appends the time zone abbreviation at the end e.g. 2020-05-20 13:37:00 CET. If no options are supplied, then default values are used. For more details please see DateTimeOptions.
dateTimeForTimeZone
dateTimeParse Helper function to parse a number, text or Date to a DateTime value. If a timeZone is supplied the incoming value is parsed with that timeZone as a base. The only exception to this is if the passed value is in a UTC-based format. Then it will use UTC as the base. If no format is specified the current system format will be assumed.It can also parse the Grafana quick date and time format, e.g. now-6h will be parsed as Date.now() - 6 hours and returned as a valid DateTime value.If no options are supplied, then default values are used. For more details please see DateTimeOptions.
DEFAULT_FIELD_DISPLAY_VALUES_LIMIT
DefaultTimeZone
deprecationWarning
escapeStringForRegex
escapeUnescapedString
FALLBACK_COLOR
fieldMatchers Registry that contains all of the built in field matchers.
fieldReducers
frameMatchers Registry that contains all of the built in frame matchers.
getAllValuesFromDimension
getColumnFromDimension
getColumnsFromDimension
getDimensionByName
getFieldDisplayValues
getLocale
getLocaleData
getSeriesTimeStep Returns minimal time step from series time field
getTimeField
getTimeZone Used to get the current selected time zone. If a valid time zone is passed in the options it will be returned. If no valid time zone is passed either the time zone configured for the user account will be returned or the default for Grafana.
getTimeZoneGroups
getTimeZoneInfo
getTimeZones
getValueFromDimension
guessFieldTypes
hasMsResolution Checks if series time field has ms resolution
identityOverrideProcessor
isDataFrame
isDateTime
ISO_8601
isTableData
locationUtil
LogsParsers
MISSING_VALUE
numberOverrideProcessor
objRemoveUndefined
onUpdateDatasourceJsonDataOption
onUpdateDatasourceJsonDataOptionChecked
onUpdateDatasourceJsonDataOptionSelect
onUpdateDatasourceOption
onUpdateDatasourceResetOption
onUpdateDatasourceSecureJsonDataOption
onUpdateDatasourceSecureJsonDataOptionSelect
PanelEvents
selectOverrideProcessor
setLocale
sortInAscendingOrder
sortInDescendingOrder
sortLogRows
sortLogsResult
standardEditorsRegistry
standardFieldConfigEditorRegistry
standardTransformers
standardTransformersRegistry Registry of transformation options that can be driven by stored configuration files.
stringOverrideProcessor
systemDateFormats
textUtil
thresholdsOverrideProcessor
TIME_FORMAT
TIME_SERIES_METRIC_FIELD_NAME
TIME_SERIES_TIME_FIELD_NAME
TIME_SERIES_VALUE_FIELD_NAME
timeZoneAbbrevation Helper function to return only the time zone abbreviation for a given date and time value. If no options are supplied, then default values are used. For more details please see DateTimeOptions.
timeZoneFormatUserFriendly
toDuration
toLegacyResponseData
toPascalCase
toUtc
unEscapeStringFromRegex
unitOverrideProcessor
updateDatasourcePluginJsonDataOption
updateDatasourcePluginResetOption
updateDatasourcePluginSecureJsonDataOption
urlUtil
valueMappingsOverrideProcessor
valueMatchers Registry that contains all of the built in value matchers.
VAR_CALC
VAR_CELL_PREFIX
VAR_FIELD_LABELS
VAR_FIELD_NAME
VAR_SERIES_NAME

Type Aliases

Type Alias Description
AlertErrorPayload
AlertPayload
AnnotationEventMappings
BinaryOperation
DataQueryResponseData
DataSourceOptionsType
DataSourceQueryType
DateTimeInput
DecimalCount
Dimensions
DisplayProcessor
DurationInput
DurationUnit
FieldColorSeriesByMode (BETA)
FieldMatcher
FormatInput
FrameMatcher
GraphSeriesValue
InterpolateFunction
KeyValue
LayoutMode
LegacyResponseData Starting in v6.2 DataFrame can represent both TimeSeries and TableData
LinkTarget
LiveChannelEvent
MutableField
NavIndex
PanelMigrationHandler Called when a panel is first loaded with current panel model
PanelOptionEditorsRegistry
PanelTypeChangedHandler Called before a panel is initialized. Allows panel inspection for any updates before changing the panel type.
PreferredVisualisationType
StandardOptionConfig (BETA)
TextDisplayOptions Explicit control for text settings
ThemeBreakpointsKey (BETA)
ThemeZIndices (BETA)
TimeFragment
TimeSeriesPoints
TimeSeriesValue
TimeZone
TimeZoneBrowser
TimeZoneResolver The type to describe the time zone resolver function that will be used to access the default time zone of a user.
TimeZoneUtc
TraceKeyValuePair Type representing a tag in a trace span or fields of a log.
TraceLog Type representing a log in a span.
UrlQueryMap Type to represent the values parsed from the query string.
UrlQueryValue Type to represent the value of a single query variable.
ValueConverter
ValueFormatter
ValueMatcher Value matcher type to describe the matcher function
VariableType