Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update paths, references to River, and config/binary paths and names #84

Merged
merged 7 commits into from
Mar 26, 2024
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Update article reference to Alloy
clayton-cornell committed Mar 26, 2024
commit e8c52a4e271353943df88320cadd381a45d1e586
2 changes: 1 addition & 1 deletion docs/sources/concepts/_index.md
Original file line number Diff line number Diff line change
@@ -7,6 +7,6 @@ weight: 100

# Concepts

This section explains the primary concepts of {{< param "PRODUCT_NAME" >}}.
This section explains the primary concepts of {{< param "FULL_PRODUCT_NAME" >}}.

{{< section >}}
1 change: 0 additions & 1 deletion docs/sources/concepts/clustering.md
Original file line number Diff line number Diff line change
@@ -58,7 +58,6 @@ Refer to component reference documentation to discover whether it supports clust
You can use the {{< param "PRODUCT_NAME" >}} UI [clustering page][] to monitor your cluster status.
Refer to [Debugging clustering issues][debugging] for additional troubleshooting information.


[run]: ../../reference/cli/run/#clustering-beta
[prometheus.scrape]: ../../reference/components/prometheus.scrape/#clustering-beta
[pyroscope.scrape]: ../../reference/components/pyroscope.scrape/#clustering-beta
20 changes: 10 additions & 10 deletions docs/sources/concepts/config-language/_index.md
Original file line number Diff line number Diff line change
@@ -7,14 +7,14 @@ weight: 10

# Configuration language

{{< param "PRODUCT_NAME" >}} dynamically configures and connects components with a custom configuration language called River.
{{< param "PRODUCT_NAME" >}} dynamically configures and connects components with the {{< param "PRODUCT_NAME" >}} configuration syntax.

River aims to reduce errors in configuration files by making configurations easier to read and write.
River configurations use blocks that can be easily copied and pasted from the documentation to help you get started as quickly as possible.
The {{< param "PRODUCT_NAME" >}} syntax aims to reduce errors in configuration files by making configurations easier to read and write.
{{< param "PRODUCT_NAME" >}} configurations use blocks that can be easily copied and pasted from the documentation to help you get started as quickly as possible.

A River configuration file tells {{< param "PRODUCT_NAME" >}} which components to launch and how to bind them together into a pipeline.
An {{< param "PRODUCT_NAME" >}} configuration file tells {{< param "PRODUCT_NAME" >}} which components to launch and how to bind them together into a pipeline.

The River syntax uses blocks, attributes, and expressions.
The {{< param "PRODUCT_NAME" >}} syntax uses blocks, attributes, and expressions.

```river
// Create a local.file component labeled my_file.
@@ -36,13 +36,13 @@ BLOCK_NAME {
}
```

[River is designed][RFC] with the following requirements in mind:
[{{< param "PRODUCT_NAME" >}} is designed][RFC] with the following requirements in mind:

* _Fast_: The configuration language must be fast so the component controller can quickly evaluate changes.
* _Simple_: The configuration language must be easy to read and write to minimize the learning curve.
* _Debuggable_: The configuration language must give detailed information when there's a mistake in the configuration file.

River is similar to HCL, the language Terraform and other Hashicorp projects use.
The {{< param "PRODUCT_NAME" >}} configuration syntax is similar to HCL, the language Terraform and other Hashicorp projects use.
It's a distinct language with custom syntax and features, such as first-class functions.

* Blocks are a group of related settings and usually represent creating a component.
@@ -51,7 +51,7 @@ It's a distinct language with custom syntax and features, such as first-class fu
* Expressions represent a value, either literally or by referencing and combining other values.
You use expressions to compute a value for an attribute.

River is declarative, so ordering components, blocks, and attributes within a block isn't significant.
The {{< param "PRODUCT_NAME" >}} syntax is declarative, so ordering components, blocks, and attributes within a block isn't significant.
The relationship between components determines the order of operations.

## Attributes
@@ -69,7 +69,7 @@ log_level = "debug"

You use expressions to compute the value of an attribute.
The simplest expressions are constant values like `"debug"`, `32`, or `[1, 2, 3, 4]`.
River supports complex expressions, for example:
The {{< param "PRODUCT_NAME" >}} syntax supports complex expressions, for example:

* Referencing the exports of components: `local.file.password_file.content`
* Mathematical operations: `1 + 2`, `3 * 4`, `(5 * 6) + (7 + 8)`
@@ -107,7 +107,7 @@ The preceding example has two blocks:

## Tooling

You can use one or all of the following tools to help you write configuration files in River.
You can use one or all of the following tools to help you write {{< param "PRODUCT_NAME" >}} configuration files.

* Editor support for:
* [VSCode](https://github.com/grafana/vscode-alloy)
5 changes: 2 additions & 3 deletions docs/sources/concepts/config-language/components.md
Original file line number Diff line number Diff line change
@@ -8,14 +8,13 @@ weight: 300
# Components configuration language

Components are the defining feature of {{< param "PRODUCT_NAME" >}}.
Components are small, reusable pieces of business logic that perform a single task like retrieving secrets or collecting Prometheus metrics,
and you can wire them together to form programmable pipelines of telemetry data.
Components are small, reusable pieces of business logic that perform a single task like retrieving secrets or collecting Prometheus metrics, and you can wire them together to form programmable pipelines of telemetry data.

The [_component controller_][controller] is responsible for scheduling components, reporting their health and debug status, re-evaluating their arguments, and providing their exports.

## Configuring components

You create [components][] by defining a top-level River block.
You create [components][] by defining a top-level block.
All components are identified by their name, describing what the component is responsible for, and a user-specified _label_.

## Arguments and exports
6 changes: 3 additions & 3 deletions docs/sources/concepts/config-language/files.md
Original file line number Diff line number Diff line change
@@ -8,7 +8,7 @@ weight: 100
# Files

River files are plain text files with the `.alloy` file extension.
You can refer to each River file as a "configuration file" or a "River configuration."
You can refer to each {{< param "PRODUCT_NAME" >}} file as a "configuration file" or an "{{< param "PRODUCT_NAME" >}} configuration."

River files must be UTF-8 encoded and can contain Unicode characters.
River files can use Unix-style line endings (LF) and Windows-style line endings (CRLF), but formatters may replace all line endings with Unix-style ones.
{{< param "PRODUCT_NAME" >}} configuration files must be UTF-8 encoded and can contain Unicode characters.
{{< param "PRODUCT_NAME" >}} configuration files can use Unix-style line endings (LF) and Windows-style line endings (CRLF), but formatters may replace all line endings with Unix-style ones.
20 changes: 9 additions & 11 deletions docs/sources/concepts/config-language/syntax.md
Original file line number Diff line number Diff line change
@@ -7,20 +7,19 @@ weight: 200

# Syntax

The River syntax is easy to read and write. It has only two high-level elements, _Attributes_ and _Blocks_.
The {{< param "PRODUCT_NAME" >}} syntax is easy to read and write. It has only two high-level elements, _Attributes_ and _Blocks_.

River is a _declarative_ language used to build programmable pipelines.
The {{< param "PRODUCT_NAME" >}} configuration syntax is a _declarative_ language used to build programmable pipelines.
The order of blocks and attributes within the River configuration file isn't important.
The language considers all direct and indirect dependencies between elements to determine their relationships.

## Comments

River configuration files support single-line `//` and block `/* */` comments.
{{< param "PRODUCT_NAME" >}} configuration files support single-line `//` and block `/* */` comments.

## Identifiers

River considers an identifier as valid if it consists of one or more UTF-8 letters (A through Z, both upper- and lower-case),
digits or underscores, but doesn't start with a digit.
{{< param "PRODUCT_NAME" >}} syntax considers an identifier as valid if it consists of one or more UTF-8 letters (A through Z, both upper- and lower-case), digits or underscores, but doesn't start with a digit.

## Attributes and Blocks

@@ -36,9 +35,9 @@ The following example sets the `log_level` attribute to `"debug"`.
log_level = "debug"
```

The `ATTRIBUTE_NAME` must be a valid River [identifier][].
The `ATTRIBUTE_NAME` must be a valid {{< param "PRODUCT_NAME" >}} [identifier][].

The `ATTRIBUTE_VALUE` can be either a constant value of a valid River [type][] (for example, a string, boolean, number), or an [_expression_][expression] to represent or compute more complex attribute values.
The `ATTRIBUTE_VALUE` can be either a constant value of a valid {{< param "PRODUCT_NAME" >}} [type][] (for example, a string, boolean, number), or an [_expression_][expression] to represent or compute more complex attribute values.

### Blocks

@@ -79,7 +78,7 @@ BLOCK_NAME "BLOCK_LABEL" {
#### Block naming rules

The `BLOCK_NAME` has to be recognized by {{< param "PRODUCT_NAME" >}} as either a valid component name or a special block for configuring global settings.
If the `BLOCK_LABEL` must be set, it must be a valid River [identifier][] wrapped in double quotes.
If the `BLOCK_LABEL` must be set, it must be a valid {{< param "PRODUCT_NAME" >}} [identifier][] wrapped in double quotes.
In these cases, you use the label to disambiguate between multiple top-level blocks of the same name.

The following snippet defines a block named `local.file` with its label set to "token".
@@ -94,13 +93,12 @@ local.file "token" {

## Terminators

All block and attribute definitions are followed by a newline, which River calls a _terminator_, as it terminates the current statement.
All block and attribute definitions are followed by a newline, which {{< param "PRODUCT_NAME" >}} calls a _terminator_, as it terminates the current statement.

A newline is treated as a terminator when it follows any expression, `]`, `)`, or `}`.
River ignores other newlines and you can can enter as many newlines as you want.
{{< param "PRODUCT_NAME" >}} ignores other newlines and you can can enter as many newlines as you want.

[identifier]: #identifiers
[identifier]: #identifiers
[expression]: ../expressions/
[type]: ../expressions/types_and_values
"/docs/agent/ -> /docs/agent/<ALLOY_VERSION>/flow/concepts/config-language/expressions/"/docs/agent/ -> /docs/agent/<ALLOY_VERSION>/flow/concepts/config-language/expressions/
2 changes: 1 addition & 1 deletion docs/sources/get-started/deploy-alloy.md
Original file line number Diff line number Diff line change
@@ -39,7 +39,7 @@ To decide whether scaling is necessary, check metrics such as:
#### Stateful and stateless components

In the context of tracing, a "stateful component" is a component that needs to aggregate certain spans to work correctly.
A "stateless {{< param "PRODUCT_NAME" >}}" is a {{< param "PRODUCT_NAME" >}} which does not contain stateful components.
A "stateless {{< param "PRODUCT_NAME" >}}" is an {{< param "PRODUCT_NAME" >}} which does not contain stateful components.

Scaling stateful {{< param "PRODUCT_NAME" >}}s is more difficult, because spans must be forwarded to a specific {{< param "PRODUCT_NAME" >}} according to a span property such as trace ID or a `service.name` attribute.
You can forward spans with `otelcol.exporter.loadbalancing`.
2 changes: 1 addition & 1 deletion docs/sources/get-started/install/docker.md
Original file line number Diff line number Diff line change
@@ -16,7 +16,7 @@ weight: 100
## Before you begin

* Install [Docker][] on your computer.
* Create and save a {{< param "PRODUCT_NAME" >}} River configuration file on your computer, for example:
* Create and save an {{< param "PRODUCT_NAME" >}} configuration file on your computer, for example:

```river
logging {
4 changes: 2 additions & 2 deletions docs/sources/get-started/run/_index.md
Original file line number Diff line number Diff line change
@@ -6,10 +6,10 @@ title: Run Grafana Alloy
weight: 50
---

# Run {{% param "PRODUCT_NAME" %}}
# Run {{% param "FULL_PRODUCT_NAME" %}}

Use the following pages to learn how to start, restart, and stop {{< param "PRODUCT_NAME" >}} after it's installed.
For installation instructions, refer to [Install {{< param "PRODUCT_NAME" >}}][Install].
For installation instructions, refer to [Install {{< param "FULL_PRODUCT_NAME" >}}][Install].

{{< section >}}

2 changes: 1 addition & 1 deletion docs/sources/get-started/run/binary.md
Original file line number Diff line number Diff line change
@@ -6,7 +6,7 @@ title: Run Grafana Alloy as a standalone binary
weight: 600
---

# Run {{% param "PRODUCT_NAME" %}} as a standalone binary
# Run {{% param "FULL_PRODUCT_NAME" %}} as a standalone binary

If you [downloaded][InstallBinary] the standalone binary, you must run {{< param "PRODUCT_NAME" >}} from a terminal or command window.

2 changes: 1 addition & 1 deletion docs/sources/get-started/run/linux.md
Original file line number Diff line number Diff line change
@@ -6,7 +6,7 @@ title: Run Grafana Alloy on Linux
weight: 300
---

# Run {{% param "PRODUCT_NAME" %}} on Linux
# Run {{% param "FULL_PRODUCT_NAME" %}} on Linux

{{< param "PRODUCT_NAME" >}} is [installed][InstallLinux] as a [systemd][] service on Linux.

2 changes: 1 addition & 1 deletion docs/sources/get-started/run/macos.md
Original file line number Diff line number Diff line change
@@ -6,7 +6,7 @@ title: Run Grafana Alloy on macOS
weight: 400
---

# Run {{% param "PRODUCT_NAME" %}} on macOS
# Run {{% param "FULL_PRODUCT_NAME" %}} on macOS

{{< param "PRODUCT_NAME" >}} is [installed][InstallMacOS] as a launchd service on macOS.

8 changes: 4 additions & 4 deletions docs/sources/get-started/run/windows.md
Original file line number Diff line number Diff line change
@@ -6,7 +6,7 @@ title: Run Grafana Alloy on Windows
weight: 500
---

# Run {{% param "PRODUCT_NAME" %}} on Windows
# Run {{% param "FULL_PRODUCT_NAME" %}} on Windows

{{< param "PRODUCT_NAME" >}} is [installed][InstallWindows] as a Windows Service.
The service is configured to automatically run on startup.
@@ -19,11 +19,11 @@ To verify that {{< param "PRODUCT_NAME" >}} is running as a Windows Service:

1. Type: `services.msc` and click **OK**.

1. Scroll down to find the **{{< param "PRODUCT_NAME" >}}** service and verify that the **Status** is **Running**.
1. Scroll down to find the **{{< param "FULL_PRODUCT_NAME" >}}** service and verify that the **Status** is **Running**.

## View {{% param "PRODUCT_NAME" %}} logs

When running on Windows, {{< param "PRODUCT_NAME" >}} writes its logs to Windows Event Logs with an event source name of **{{< param "PRODUCT_NAME" >}}**.
When running on Windows, {{< param "PRODUCT_NAME" >}} writes its logs to Windows Event Logs with an event source name of **{{< param "FULL_PRODUCT_NAME" >}}**.

To view the logs, perform the following steps:

@@ -35,7 +35,7 @@ To view the logs, perform the following steps:

1. In the Event Viewer, click on **Windows Logs > Application**.

1. Search for events with the source **{{< param "PRODUCT_NAME" >}}**.
1. Search for events with the source **{{< param "FULL_PRODUCT_NAME" >}}**.

## Next steps

4 changes: 2 additions & 2 deletions docs/sources/reference/cli/_index.md
Original file line number Diff line number Diff line change
@@ -16,8 +16,8 @@ The most common subcommand is [`run`][run] which accepts a configuration file an

Available commands:

* [`convert`][convert]: Convert a {{< param "PRODUCT_NAME" >}} configuration file.
* [`fmt`][fmt]: Format a {{< param "PRODUCT_NAME" >}} configuration file.
* [`convert`][convert]: Convert an {{< param "PRODUCT_NAME" >}} configuration file.
* [`fmt`][fmt]: Format an {{< param "PRODUCT_NAME" >}} configuration file.
* [`run`][run]: Start {{< param "PRODUCT_NAME" >}}, given a configuration file.
* [`tools`][tools]: Read the WAL and provide statistical information.
* `completion`: Generate shell completion for the `alloy` CLI.
18 changes: 9 additions & 9 deletions docs/sources/reference/cli/convert.md
Original file line number Diff line number Diff line change
@@ -47,9 +47,9 @@ The following flags are supported:
### Defaults

{{< param "PRODUCT_NAME" >}} defaults are managed as follows:
* If a provided source configuration value matches a {{< param "PRODUCT_NAME" >}} default value, the property is left off the output.
* If a non-provided source configuration value default matches a {{< param "PRODUCT_NAME" >}} default value, the property is left off the output.
* If a non-provided source configuration value default doesn't match a {{< param "PRODUCT_NAME" >}} default value, the default value is included in the output.
* If a provided source configuration value matches an {{< param "PRODUCT_NAME" >}} default value, the property is left off the output.
* If a non-provided source configuration value default matches an {{< param "PRODUCT_NAME" >}} default value, the property is left off the output.
* If a non-provided source configuration value default doesn't match an {{< param "PRODUCT_NAME" >}} default value, the default value is included in the output.

### Errors

@@ -58,7 +58,7 @@ These can be bypassed using the `--bypass-errors` flag.

### Prometheus

Using the `--source-format=prometheus` will convert the source configuration from [Prometheus v2.45][] to a {{< param "PRODUCT_NAME" >}} configuration.
Using the `--source-format=prometheus` will convert the source configuration from [Prometheus v2.45][] to an {{< param "PRODUCT_NAME" >}} configuration.

This includes Prometheus features such as [scrape_config][], [relabel_config][], [metric_relabel_configs][], [remote_write][], and many supported *_sd_configs.
Unsupported features in a source configuration result in [errors][].
@@ -67,25 +67,25 @@ Refer to [Migrate from Prometheus to {{< param "PRODUCT_NAME" >}}][migrate prome

### Promtail

Using the `--source-format=promtail` will convert the source configuration from [Promtail v2.8.x][] to a {{< param "PRODUCT_NAME" >}} configuration.
Using the `--source-format=promtail` will convert the source configuration from [Promtail v2.8.x][] to an {{< param "PRODUCT_NAME" >}} configuration.

Nearly all [Promtail features][] are supported and can be converted to {{< param "PRODUCT_NAME" >}} configuration.

If you have unsupported features in a source configuration, you will receive [errors][] when you convert to a {{< param "PRODUCT_NAME" >}} configuration.
If you have unsupported features in a source configuration, you will receive [errors][] when you convert to an {{< param "PRODUCT_NAME" >}} configuration.
The converter will also raise warnings for configuration options that may require your attention.

Refer to [Migrate from Promtail to {{< param "PRODUCT_NAME" >}}][migrate promtail] for a detailed migration guide.

### Static

Using the `--source-format=static` will convert the source configuration from a [Grafana Agent Static][] configuration to a {{< param "PRODUCT_NAME" >}} configuration.
Using the `--source-format=static` will convert the source configuration from a [Grafana Agent Static][] configuration to an {{< param "PRODUCT_NAME" >}} configuration.

Include `--extra-args` for passing additional command line flags from the original format.
For example, `--extra-args="-enable-features=integrations-next"` converts a Grafana Agent Static [integrations-next][] configuration to a {{< param "PRODUCT_NAME" >}} configuration.
For example, `--extra-args="-enable-features=integrations-next"` converts a Grafana Agent Static [integrations-next][] configuration to an {{< param "PRODUCT_NAME" >}} configuration.
You can also expand environment variables with `--extra-args="-config.expand-env"`.
You can combine multiple command line flags with a space between each flag, for example `--extra-args="-enable-features=integrations-next -config.expand-env"`.

If you have unsupported features in a Grafana Agent Static mode source configuration, you will receive [errors][] when you convert to a {{< param "PRODUCT_NAME" >}} configuration.
If you have unsupported features in a Grafana Agent Static mode source configuration, you will receive [errors][] when you convert to an {{< param "PRODUCT_NAME" >}} configuration.
The converter also raises warnings for configuration options that may require your attention.

Refer to [Migrate from Grafana Agent Static to {{< param "PRODUCT_NAME" >}}][migrate static] for a detailed migration guide.
Original file line number Diff line number Diff line change
@@ -9,7 +9,7 @@ title: prometheus.exporter.mongodb
The `prometheus.exporter.mongodb` component embeds percona's [`mongodb_exporter`](https://github.com/percona/mongodb_exporter).

{{< admonition type="note" >}}
This exporter doesn't collect metrics from multiple nodes. For this integration to work properly, you must have connect each node of your MongoDB cluster to a {{< param "PRODUCT_NAME" >}} instance.
This exporter doesn't collect metrics from multiple nodes. For this integration to work properly, you must have connect each node of your MongoDB cluster to an {{< param "PRODUCT_NAME" >}} instance.
{{< /admonition >}}

We strongly recommend configuring a separate user for {{< param "PRODUCT_NAME" >}}, giving it only the strictly mandatory security privileges necessary for monitoring your node.
2 changes: 1 addition & 1 deletion docs/sources/reference/components/pyroscope.ebpf.md
Original file line number Diff line number Diff line change
@@ -192,7 +192,7 @@ Interpreted methods will display the interpreter function’s name rather than t

In the following example, performance profiles are collected from pods on the same node, discovered using
`discovery.kubernetes`. Pod selection relies on the `HOSTNAME` environment variable, which is a pod name if {{< param "PRODUCT_NAME" >}} is
used as a {{< param "PRODUCT_NAME" >}} Helm chart. The `service_name` label is set
used as an {{< param "PRODUCT_NAME" >}} Helm chart. The `service_name` label is set
to `{__meta_kubernetes_namespace}/{__meta_kubernetes_pod_container_name}` from Kubernetes meta labels.

```river
Loading