commit
7c980c63fa
|
@ -86,7 +86,7 @@ $article-note-table-row-alt: #3B2862;
|
|||
$article-note-table-scrollbar: $np-deepnight;
|
||||
$article-note-shadow: $np-deepnight;
|
||||
$article-note-code: $cp-comet;
|
||||
$article-note-code-bg: $wp-telopea;
|
||||
$article-note-code-bg: $wp-jaguar;
|
||||
$article-note-code-accent1: #567375;
|
||||
$article-note-code-accent2: $b-pool;
|
||||
$article-note-code-accent3: $gr-viridian;
|
||||
|
|
|
@ -24,6 +24,7 @@ $g19-ghost: #FAFAFC;
|
|||
$g20-white: #FFFFFF; // Brand color
|
||||
|
||||
// Warm Purples - Magentas
|
||||
$wp-jaguar: #1d0135;
|
||||
$wp-telopea: #23043E;
|
||||
$wp-violentdark: #2d0749;
|
||||
$wp-violet: #32094E;
|
||||
|
|
|
@ -294,9 +294,9 @@ StringExpression = "${" Expression "}" .
|
|||
```
|
||||
|
||||
String literals are also interpolated for embedded expressions to be evaluated as strings.
|
||||
Embedded expressions are enclosed within the literals `${` and `}` respectively.
|
||||
Embedded expressions are enclosed in a dollar sign and curly braces (`${}`).
|
||||
The expressions are evaluated in the scope containing the string literal.
|
||||
The result of an expression is formatted as a string and replaces the string content between the brackets.
|
||||
The result of an expression is formatted as a string and replaces the string content between the braces.
|
||||
All types are formatted as strings according to their literal representation.
|
||||
A function `printf` exists to allow more precise control over formatting of various types.
|
||||
To include the literal `${` within a string, it must be escaped.
|
||||
|
|
|
@ -0,0 +1,96 @@
|
|||
---
|
||||
title: String interpolation
|
||||
description: >
|
||||
Flux string interpolation evaluates string literals containing one or more placeholders
|
||||
and returns a result with placeholders replaced with their corresponding values.
|
||||
menu:
|
||||
v2_0_ref:
|
||||
parent: Flux specification
|
||||
name: String interpolation
|
||||
weight: 211
|
||||
---
|
||||
|
||||
Flux string interpolation evaluates string literals containing one or more placeholders
|
||||
and returns a result with placeholders replaced with their corresponding values.
|
||||
|
||||
## String interpolation syntax
|
||||
To use Flux string interpolation, enclose embedded [expressions](/v2.0/reference/flux/language/expressions/)
|
||||
in a dollar sign and curly braces `${}`.
|
||||
Flux replaces the content between the braces with the result of the expression and
|
||||
returns a string literal.
|
||||
|
||||
```js
|
||||
name = "John"
|
||||
|
||||
"My name is ${name}."
|
||||
|
||||
// My name is John.
|
||||
```
|
||||
|
||||
{{% note %}}
|
||||
#### Flux only interpolates string values
|
||||
Flux currently interpolates only string values ([IMP#1775](https://github.com/influxdata/flux/issues/1775)).
|
||||
Use the [string() function](/v2.0/reference/flux/functions/built-in/transformations/type-conversions/string/)
|
||||
to convert non-string values to strings.
|
||||
|
||||
```js
|
||||
count = 12
|
||||
|
||||
"I currently have ${string(v: count)} cats."
|
||||
```
|
||||
{{% /note %}}
|
||||
|
||||
|
||||
## Use dot notation to interpolate object values
|
||||
[Objects](/v2.0/reference/flux/language/expressions/#object-literals) consist of key-value pairs.
|
||||
Use [dot notation](/v2.0/reference/flux/language/expressions/#member-expressions)
|
||||
to interpolate values from an object.
|
||||
|
||||
```js
|
||||
person = {
|
||||
name: "John",
|
||||
age: 42
|
||||
}
|
||||
|
||||
"My name is ${person.name} and I'm ${string(v: person.age)} years old."
|
||||
|
||||
// My name is John and I'm 42 years old.
|
||||
```
|
||||
|
||||
Flux returns each record in query results as an object.
|
||||
In Flux row functions, each row object is represented by `r`.
|
||||
Use dot notation to interpolate specific column values from the `r` object.
|
||||
|
||||
##### Use string interpolation to add a human-readable message
|
||||
```js
|
||||
from(bucket: "example-bucket")
|
||||
|> range(start: -30m)
|
||||
|> map(fn: (r) => ({
|
||||
r with
|
||||
human-readable: "${r._field} is ${r._value} at ${string(v: r._time)}."
|
||||
}))
|
||||
```
|
||||
|
||||
## String interpolation versus concatenation
|
||||
Flux supports both string interpolation and string concatenation.
|
||||
String interpolation is a more concise method for achieving the same result.
|
||||
|
||||
```js
|
||||
person = {
|
||||
name: "John",
|
||||
age: 42
|
||||
}
|
||||
|
||||
// String interpolation
|
||||
"My name is ${person.name} and I'm ${string(v: person.age)} years old."
|
||||
|
||||
// String concatenation
|
||||
"My name is " + person.name + " and I'm " + string(v: person.age) + " years old."
|
||||
|
||||
// Both return: My name is John and I'm 42 years old.
|
||||
```
|
||||
|
||||
{{% note %}}
|
||||
Check and notification message templates configured in the InfluxDB user interface
|
||||
**do not** support string concatenation.
|
||||
{{% /note %}}
|
|
@ -11,13 +11,20 @@ aliases:
|
|||
---
|
||||
|
||||
{{% note %}}
|
||||
_The latest release of InfluxDB v2.0 alpha includes **Flux v0.42.0**.
|
||||
_The latest release of InfluxDB v2.0 alpha includes **Flux v0.43.0**.
|
||||
Though newer versions of Flux may be available, they will not be included with
|
||||
InfluxDB until the next InfluxDB v2.0 release._
|
||||
{{% /note %}}
|
||||
|
||||
---
|
||||
|
||||
## v0.43.0 [2019-09-04]
|
||||
|
||||
### Features
|
||||
- PagerDuty endpoint for alerts and notifications.
|
||||
|
||||
---
|
||||
|
||||
## v0.42.0 [2019-08-30]
|
||||
|
||||
### Features
|
||||
|
|
Loading…
Reference in New Issue