Merge branch 'master' into smith/2.7.1/2

pull/4905/head
Jeffrey Smith II 2023-05-08 07:52:31 -04:00 committed by GitHub
commit 8f54e8963b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
46 changed files with 922 additions and 96 deletions

View File

@ -196,7 +196,7 @@ To query data from InfluxDB Cloud Dedicated using Python, use the
[`pyinflux3` module](https://github.com/InfluxCommunity/pyinflux3).
The following steps include setting up a Python virtual environment already
covered in [Get started writing data](/influxdb/cloud-dedicated/get-started/write/?t=Python#write-line-protocol-to-influxdb).
_If your projects virtual environment is already running, skip to step 3._
_If your project's virtual environment is already running, skip to step 3._
1. Setup your Python virtual environment.
Inside of your project directory:

View File

@ -0,0 +1,74 @@
---
title: Cancel your InfluxDB Cloud Serverless subscription
description: >
Cancel your InfluxDB Cloud account at any time by stopping all read and write
requests, backing up data, and contacting InfluxData Support.
weight: 106
aliases:
- /influxdb/v2.0/account-management/offboarding
- /influxdb/v2.0/cloud/account-management/offboarding
- /influxdb/cloud-serverless/admin/accounts/offboarding
menu:
influxdb_cloud_serverless:
parent: Manage accounts
name: Cancel InfluxDB Cloud
---
To cancel your InfluxDB Cloud Serverless subscription, complete the following steps:
1. [Stop reading and writing data](#stop-reading-and-writing-data).
2. [Export data and other artifacts](#export-data-and-other-artifacts).
3. [Cancel service](#cancel-service).
## Stop reading and writing data
To stop being charged for InfluxDB Cloud Serverless, pause all writes and queries.
## Export data and other artifacts
- [Save Telegraf configurations](#save-telegraf-configurations)
- [Export data](#export-data)
### Save Telegraf configurations
1. Click the **Load Data** icon in the navigation bar.
{{< nav-icon "load-data" >}}
2. Select the **Telegraf** tab. A list of existing Telegraf configurations appears.
3. Click the name of a Telegraf configuration.
4. Click **Download Config** to save.
### Export data
To export all your data, query your data out in _time-based batches_ and store it
in to an external system or an InfluxDB OSS instance.
<!-- For information about automatically exporting and migrating data from InfluxDB
Cloud to InfluxDB OSS, see: [Migrate data from InfluxDB Cloud to InfluxDB OSS](/influxdb/cloud-serverless/migrate-data/migrate-cloud-to-oss/). -->
## Cancel service
{{% note %}}
Cancelling your usage-based plan will delete your organization.
However, those in multi-user organizations must contact
[InfluxData Support](https://support.influxdata.com) to delete your organization.
{{% /note %}}
1. Click the account name in the header of your InfluxDB Cloud Serverless
user interface (UI) and select **Billing**.
2. Do one of the following:
- If you subscribed to an InfluxDB Cloud **Usage-Based Plan** through
**AWS Marketplace**, click the **AWS** link, click **Unsubscribe**, and then
click **Yes, cancel subscription**.
- If you subscribed to an InfluxDB Cloud **Usage-Based Plan** through
**GCP Marketplace**, click the **GCP** link, click **Unsubscribe**, and then
click **Yes, cancel subscription**.
- If you subscribed to an InfluxDB Cloud **Usage-Based Plan** through
**InfluxData**, click **Cancel Service**.
Select **I understand and agree to these conditions**, and then click
**I understand, Cancel Service.** Click **Confirm and Cancel Service**.
Your payment method is charged your final balance immediately upon
cancellation of service.

View File

@ -0,0 +1,31 @@
---
title: Change your password
seotitle: Change your InfluxDB Cloud password
description: >
To update your InfluxDB Cloud password, click the **Forgot Password** link on
the [InfluxDB Cloud login page](https://cloud2.influxdata.com/login).
Passwords must be at least 8 characters in length, and must not contain common words, personal information, or previous passwords.
menu:
influxdb_cloud_serverless:
name: Change your password
parent: Manage accounts
weight: 102
alt_engine: /influxdb/cloud/account-management/change-password/
---
To change or reset your InfluxDB Cloud password:
1. Click the **Forgot Password** link on the [InfluxDB Cloud login page](https://cloud2.influxdata.com/login).
2. Open the **InfluxCloud: Password Change Requested** email sent to the email
address associated with your InfluxDB Cloud account, click the **Reset Password**
button, and then enter and confirm a new password.
### Password requirements
Passwords must meet the following requirements:
- Must be longer than 8 characters.
- Must not contain personal information.
- Must not be a common or previous password.
These requirements follow the National Institute of Standards and Technology (NIST) standards for 2021.

View File

@ -7,7 +7,7 @@ menu:
influxdb_cloud_serverless:
name: Switch InfluxDB accounts
parent: Manage accounts
weight: 105
weight: 101
aliases:
- /influxdb/cloud-serverless/account-management/switch-account/
alt_engine: /influxdb/cloud/account-management/switch-account/

View File

@ -0,0 +1,138 @@
---
title: Manage InfluxDB Cloud Serverless billing
list_title: Manage billing
description: >
Upgrade to the InfluxDB Cloud Serverless Usage-Based Plan and manage your billing information.
weight: 106
menu:
influxdb_cloud_serverless:
parent: Administer InfluxDB Cloud
name: Manage billing
alt_engine: /influxdb/cloud/account-management/billing/
---
Learn how to upgrade your plan, access billing details, and review and resolve plan limit overages:
- [Upgrade to Usage-Based Plan](#upgrade-to-usage-based-plan)
- [Access billing details](#access-billing-details):
- [Add or update your payment method](#add-or-update-your-payment-method)
- [Add or update your contact information](#add-or-update-your-contact-information)
- [Send notifications when usage exceeds an amount](#send-notifications-when-usage-exceeds-an-amount#send-notifications-when-usage-exceeds-an-amount)
- [View Usage-based Plan information](#view-usage-based-plan-information)
- [View Free Plan information](#view-free-plan-information)
- [Review and resolve plan limit overages](#review-and-resolve-plan-limit-overages)
- [Billing cycle](#billing-cycle)
- [Declined or late payments](#declined-or-late-payments)
## Upgrade to Usage-Based Plan
1. Click **Upgrade Now** in the upper right corner of the {{< cloud-name "short" >}}
user interface (UI).
2. Set your limits (opt to receive an email when your usage exceeds the amount
you enter in the **Limit ($1 minimum)** field).
All service updates, security notifications, and other important information
are sent to the email address you provide.
3. Enter your payment information and billing address, and then click **Upgrade**.
A "Ready To Rock" confirmation appears; click **Start building your team**.
Your plan will be upgraded and {{< cloud-name >}} opens with a default
organization and bucket (both created from your email address).
## Access billing details
1. In the {{< cloud-name "short" >}} UI, select the **user avatar** in the left
navigation menu, and select **Account** >
**Billing**.
{{< nav-icon "account" >}}
2. Do one of the following:
- If you subscribed to an InfluxDB Cloud plan through
[**AWS Marketplace**](https://aws.amazon.com/marketplace/pp/B08234JZPS),
[**Azure Marketplace**](https://azuremarketplace.microsoft.com/en-us/marketplace/apps/influxdata.influxdb-cloud),
or [**GCP Marketplace**](https://console.cloud.google.com/marketplace/details/influxdata-public/cloud2-gcp-marketplace-prod?pli=1),
click the **AWS**, **Microsoft**, or **GCP** link to access your billing and
subscription information.
- If you subscribed to an InfluxDB Cloud plan through **InfluxData**, complete the following procedures as needed:
- [Add or update your payment method](#add-or-update-your-payment-method)
- [Add or update your contact information](#add-or-update-your-contact-information)
- [Send notifications when usage exceeds an amount](#send-notifications-when-usage-exceeds-an-amount)
3. View information about:
- [Usage-Based Plan](#view-usage-based-plan-information)
- [Free Plan](#view-free-plan-information)
- [Exceeded rate limits](#review-and-resolve-plan-limit-overages)
- [Billing cycle](#billing-cycle)
- [Declined or late payments](#declined-or-late-payments)
### Add or update your payment method
- On the **Billing page**:
- To update your card, click the **Change Payment** button on the Billing page.
- In the **Payment Method** section:
- Enter your cardholder name and number
- Select your expiration month and year
- Enter your CVV code and select your card type
### Add or update your contact information
1. On the **Billing page**:
- To update, click the **Edit Information** button.
- In the **Contact Information** section, enter your name, company, and address.
2. Click **Save Contact Info**.
### Send notifications when usage exceeds an amount
1. On the **Billing page**, click **Notification Settings**.
2. Select the **Send email notification** toggle, and then enter the email address to notify.
3. Enter the dollar amount to trigger a notification email. By default, an email is triggered when the amount exceeds $10. (Whole dollar amounts only. For example, $10.50 is not a supported amount.)
### View Usage-based Plan information
On the **Billing page**, view your billing information, including:
- Account balance
- Last billing update (updated hourly)
- Past invoices
- Payment method
- Contact information
- Notification settings
### View Free Plan information
On the **Billing page**, view the total limits available for the Free Plan.
## Review and resolve plan limit overages
If you exceed your plan's [adjustable quotas or limits](/influxdb/cloud-serverless/account-management/limits/), you'll receive a notification in the {{< cloud-name "short" >}} user interface (UI) **Usage** page.
To raise your oranization's rate limits:
- **Usage-Based plan**: Contact [InfluxData Support](https://support.influxdata.com)
to request higher rate limits.
- **Free plan**: [Upgrade to a Usage-based Plan](#upgrade-to-usage-based-plan).
#### Write and query limits (HTTP response code)
When a request exceeds your plan's write requests (Data In) or query requests (Reads) within a five minute window, the InfluxDB API returns the following response:
```
HTTP 429 “Too Many Requests”
Retry-After: xxx (seconds to wait before retrying the request)
```
## Billing cycle
Billing occurs on the first day of the month for the previous month. For example, if you start the Usage-based Plan on September 15, you're billed on October 1 for your usage from September 15-30.
### Declined or late payments
| Timeline | Action |
| :--------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Initial declined payment** | We'll retry charge every 72 hours. During this period, update your payment method to successfully process your payment. |
| **One week later** | Account disabled except data writes. Update your payment method to successfully process your payment and enable your account. |
| **10-14 days later** | Account completely disabled. During this period, you must contact us at [support.influxdata.com](https://support.influxdata.com) to process your payment and enable your account. |
| **21 days later** | Account suspended. Contact [support.influxdata.com](https://support.influxdata.com) to settle your final bill and retrieve a copy of your data or access to InfluxDB Cloud dashboards, tasks, Telegraf configurations, and so on. |

View File

@ -6,19 +6,19 @@ description: >
weight: 103
menu:
influxdb_cloud_serverless:
parent: Manage accounts
parent: Manage billing
name: View data usage
related:
- /flux/v0.x/stdlib/experimental/usage/from/
- /flux/v0.x/stdlib/experimental/usage/limits/
alt_engine: /influxdb/cloud/account-management/data-usage/
aliases:
- /influxdb/cloud-serverless/admin/accounts/data-usage/
---
View the statistics of your data usage and rate limits (reads, writes, and
delete limits) on the InfluxDB Cloud Serverless UI **Usage** page.
Some usage data affects monthly costs and other usage data (for example, delete
limits), does not affect pricing. For more information, see
[limits and adjustable quotas](/influxdb/cloud-serverless/admin/accounts/limits/).
View the statistics of your data usage and rate limits (reads and writes) on the
InfluxDB Cloud Serverless UI **Usage** page.
For more information, see [limits and adjustable quotas](/influxdb/cloud-serverless/admin/billing/limits/).
To view your {{< cloud-name >}} data usage, do the following:
@ -29,9 +29,7 @@ To view your {{< cloud-name >}} data usage, do the following:
- **Data In:** Total data in MB written to your {{< cloud-name "short" >}} instance.
Data in and write requests do not count towards your query count.
- **Query Count:** Total number of individual query operations, which include
queries, tasks (alerts, notifications) and Data Explorer activity.
Note, a script that includes multiple requests (for example, has multiple
`from()...` lines) counts as one query.
queries from external clients.
- **Storage:** Total disk usage in gigabytes.
- **Data Out:** Total data in MB sent as responses to queries from your
InfluxDB Cloud Serverless instance.

View File

@ -6,19 +6,21 @@ description: >
weight: 110
menu:
influxdb_cloud_serverless:
parent: Manage accounts
parent: Manage billing
name: Adjustable quotas and limits
related:
- /flux/v0.x/stdlib/experimental/usage/from/
- /flux/v0.x/stdlib/experimental/usage/limits/
alt_engine: /influxdb/cloud/account-management/limits/
aliases:
- /influxdb/cloud-serverless/admin/accounts/limits/
---
InfluxDB Cloud Serverless applies (non-adjustable) global system limits and
adjustable service quotas on a per organization basis.
{{% warn %}}
All __rates__ (data-in (writes), queries (reads), and deletes) are accrued within a fixed five-minute window.
All __rates__ (data-in (writes), and queries (reads)) are accrued within a fixed five-minute window.
Once a rate is exceeded, an error response is returned until the current five-minute window resets.
{{% /warn %}}
@ -44,12 +46,6 @@ _To request higher service quotas, reach out to [InfluxData Support](https://sup
- Bytes in HTTP in response payload
- **Available resources**:
- 2 buckets (excluding `_monitoring` and `_tasks` buckets)
- 5 dashboards
- 5 tasks
- **Alerts**:
- 2 checks
- 2 notification rules
- Unlimited Slack notification endpoints
- **Storage**: 30 days of data retention (see [retention period](/influxdb/cloud-serverless/reference/glossary/#retention-period))
{{% note %}}
@ -63,20 +59,17 @@ To write historical data older than 30 days, retain data for more than 30 days,
- **Read**: Rate of 3 GB data per 5 minutes
- Bytes in HTTP in response payload
- **Unlimited resources**
- dashboards
- tasks
- buckets
- users
- **Alerts**
- Unlimited checks
- Unlimited notification rules
- Unlimited notification endpoints for [all endpoints](/flux/v0.x/tags/notification-endpoints/)
- **Storage**: Set your retention period to unlimited or up to 1 year by [updating a buckets retention period in the InfluxDB UI](/influxdb/cloud-serverless/admin/buckets/update-bucket/#update-a-buckets-retention-period-in-the-influxdb-ui), or set a custom retention period using the [`influx bucket update command`](/influxdb/cloud-serverless/reference/cli/influx/bucket/update/) with the [`influx` CLI](influxdb/cloud/reference/cli/influx/).
- **Storage**: Set your retention period to unlimited or up to 1 year by
[updating a buckets retention period in the InfluxDB UI](/influxdb/cloud-serverless/admin/buckets/update-bucket/#update-a-buckets-retention-period-in-the-influxdb-ui),
or set a custom retention period using the [`influx bucket update command`](/influxdb/cloud-serverless/reference/cli/influx/bucket/update/)
with the [`influx` CLI](influxdb/cloud-serverless/reference/cli/influx/).
## Global limits
InfluxDB Cloud Serverless applies global (non-adjustable) system limits to all accounts,
which protects the InfluxDB Cloud infrastructure for all users.
which protects the InfluxDB Cloud Serverless infrastructure for all users.
As the service continues to evolve, we'll continue to review these global limits
and adjust them as appropriate.
@ -89,18 +82,20 @@ Limits include:
- **Total query time**: 1500 seconds of _total_ query time every 30 seconds
- **Task processing time**: 150 seconds
- **Total task time**: 1500 seconds of _total_ task time every 30 seconds
- **Delete request limit**: Rate of 300 every 5 minutes
<!-- - **Delete request limit**: Rate of 300 every 5 minutes -->
<!--
{{% note %}}
**Tip:**
Combine delete predicate expressions (if possible) into a single request. InfluxDB limits delete requests by number of requests (not points per request).
{{% /note %}}
{{% /note %}} -->
## UI error messages
The {{< cloud-name >}} UI displays a notification message when service quotas or limits are exceeded. The error messages correspond with the relevant [API error responses](#api-error-responses).
Errors can also be viewed in the [Usage page](/influxdb/cloud-serverless/admin/accounts/data-usage/) under **Limit Events**, e.g. `event_type_limited_query`, `event_type_limited_write`,`event_type_limited_cardinality`, or `event_type_limited_delete_rate`.
Errors can also be viewed in the [Usage page](/influxdb/cloud-serverless/admin/billing/data-usage/)
under **Limit Events**, e.g. `event_type_limited_query`, `event_type_limited_write`,
or `event_type_limited_delete_rate`.
## API error responses

View File

@ -0,0 +1,54 @@
---
title: InfluxDB Cloud Serverless plans
description: >
InfluxDB Cloud provides two pricing plans to fit your needs the Free Plan and the Usage-based Plan.
aliases:
- /influxdb/v2.0/cloud/rate-limits/
- /influxdb/v2.0/cloud/pricing-plans/
- /influxdb/v2.0/pricing-plans/
weight: 102
menu:
influxdb_cloud_serverless:
parent: Manage billing
name: Pricing plans
alt_engine: /influxdb/cloud/account-management/pricing-plans/
---
InfluxDB Cloud Serverless offers a [Free Plan](#free-plan), a [Usage-Based Plan](#usage-based-plan) to pay as you go, and a discounted [Annual Plan](#annual-plan).
<!--To estimate your projected usage costs, use the [InfluxDB Cloud pricing calculator](/influxdb/cloud-serverless/account-management/pricing-calculator/). -->
## Free Plan
New {{< cloud-name >}} accounts start with the Free Plan that provides a limited
number of resources and data usage.
See [plan limits](/influxdb/cloud-serverless/admin/billing/limits/).
## Usage-Based Plan
The Usage-Based Plan offers more flexibility and ensures you only pay for what you
[use](/influxdb/cloud-serverless/admin/billing/data-usage/).
Usage-Based Plans are based on consumption as measured by usage on the [pricing vectors](#pricing-vectors).
### Pricing vectors
The Usage-Based Plan uses the following pricing vectors to calculate InfluxDB Cloud billing costs:
- **Data out** is the total sum of the data (measured in GB) returned to the
user to answer a query, also known as data transfer costs.
- **Query count** is the total number of individual query operations:
- Each individual query operation—including those from external clients—is one billable query operation.
- Failed operations arent counted.
- **Data In** is the amount of data youre writing into InfluxDB Cloud (measured in MB).
- **Storage** is the amount of data youre storing in InfluxDB Cloud (measured in GB/hour).
Discover how to [manage InfluxDB Cloud Serverless billing](/influxdb/cloud-serverless/admin/billing/).
## Annual Plan
<!-- Maybe this should be "annual commitment"? -->
An Annual Plan offers a discount for a commitment to a specific amount of usage over set period of time. This plan uses the same pricing vectors and calculation methodology as Usage-Based Plans.
__Interested in an Annual Plan? Reach out to [InfluxData Sales](https://www.influxdata.com/contact-sales/).__
<!-- ## Pricing FAQs -->

View File

@ -0,0 +1,500 @@
---
title: Use Java and the Flight SQL package to query data
description: >
Use Java and the `org.apache.arrow.flight.sql` Flight SQL package to query data
stored in an InfluxDB Cloud Serverless bucket.
weight: 101
menu:
influxdb_cloud_serverless:
parent: Query with Flight SQL
name: Use Java
identifier: query_with_java
influxdb/cloud-serverless/tags: [query, flightsql, java]
related:
- /influxdb/cloud-serverless/query-data/sql/
list_code_example: |
```java
public class Query {
public static void main(String[] args) {
String query = "SELECT * FROM home";
Location location = Location.forGrpcTls(HOST, 443);
CredentialCallOption auth = new CredentialCallOption(new BearerCredentialWriter(TOKEN));
BufferAllocator allocator = new RootAllocator(Long.MAX_VALUE);
FlightClientMiddleware.Factory f = info -> new FlightClientMiddleware() {
@Override
public void onBeforeSendingHeaders(CallHeaders outgoingHeaders) {
outgoingHeaders.insert(DATABASE_FIELD, DATABASE_NAME);
}
};
FlightClient client = FlightClient.builder(allocator, location)
.intercept(f)
.build();
FlightSqlClient sqlClient = new FlightSqlClient(client);
FlightInfo flightInfo = sqlClient.execute(query, auth);
}
}
```
---
Use Java and the Flight SQL package to query data stored in an InfluxDB Cloud
Serverless bucket.
<!-- TOC -->
- [Get started using Java to query InfluxDB](#get-started-using-java-to-query-influxdb)
- [Set up InfluxDB](#set-up-influxdb)
- [Install prerequisites](#install-prerequisites)
- [Create the FlightQuery class](#create-the-flightquery-class)
- [Create a query client](#create-a-query-client)
- [Execute a query](#execute-a-query)
- [Retrieve and process Arrow data](#retrieve-and-process-arrow-data)
- [Run the application](#run-the-application)
- [Troubleshoot Arrow Flight requests](#troubleshoot-arrow-flight-requests)
<!-- /TOC -->
## Get started using Java to query InfluxDB
Write a Java class for a Flight SQL client that connects to InfluxDB Cloud Serverless,
executes an SQL query, and retrieves data stored in an InfluxDB Cloud Serverless bucket.
The example uses the [Apache Arrow Java implementation (`org.apache.arrow`)](https://arrow.apache.org/docs/java/index.html) for interacting with Flight database servers like InfluxDB v3.
- **`org.apache.arrow`**: Provides classes and methods for integrating Java applications with Apache Arrow data and protocols.
- **`org.apache.arrow.flight.sql`**: Provides classes and methods for
interacting with Flight database servers using Arrow Flight RPC and Flight SQL.
1. [Set up InfluxDB](#set-up-influxdb)
2. [Install prerequisites](#install-prerequisites)
3. [Create the FlightQuery class](#create-the-flightquery-class)
4. [Create a query client](#create-a-query-client)
5. [Execute a query](#execute-a-query)
6. [Retrieve and process Arrow data](#retrieve-and-process-arrow-data)
To clone or download the example application that you can run with Docker, see the [InfluxCommunity/ArrowFlightClient_Query_Examples repo](https://github.com/InfluxCommunity/ArrowFlightClient_Query_Examples) on GitHub.
### Set up InfluxDB
To configure the application for querying InfluxDB Cloud Serverless, you'll need the following InfluxDB resources:
- InfluxDB Cloud Serverless **bucket**
- InfluxDB Cloud Serverless **API token** with _read_ permission to the bucket
If you don't already have an API token and a bucket, see how to [set up InfluxDB](/influxdb/cloud-serverless/get-started/setup/).
If you don't already have data to query, see how to
[write data](/influxdb/cloud-serverless/get-started/write/) to a bucket.
### Install prerequisites
We recommend using Docker and Maven for building and running the Java application and avoiding platform-specific dependency problems.
The example `Dockerfile` installs compatible versions of Maven
and Java JDK in the Docker container, and then runs the Maven commands to download dependencies and compile the application.
Follow the instructions to download and install Docker for your system:
- **macOS**: [Install Docker for macOS](https://docs.docker.com/desktop/install/mac-install/)
- **Linux**: [Install Docker for Linux](https://docs.docker.com/desktop/install/linux-install/)
{{< expand-wrapper >}}
{{% expand "View the Dockerfile" %}}
```dockerfile
# Use the official Maven image as the base image
FROM maven:3.8.3-openjdk-11 AS build
# Set the working directory
WORKDIR /app
# Copy the pom.xml file into the container
COPY pom.xml .
# Download and cache dependencies
RUN mvn dependency:go-offline
# Copy the rest of the source code into the container
COPY src/ ./src/
# Compile the source code and copy dependencies
RUN mvn compile dependency:copy-dependencies
# Use the official OpenJDK image as the runtime base image
FROM openjdk:11-jre-slim
# Set the working directory
WORKDIR /app
# Copy the compiled classes and dependencies from the build stage
COPY --from=build /app/target/classes ./classes
COPY --from=build /app/target/dependency ./dependency
# Set ARGs for --build-arg options passed in the build command
ARG DATABASE_FIELD
ARG DATABASE_NAME
ARG HOST
ARG TOKEN
# Set run-time ENVs from ARGs
ENV DATABASE_FIELD=${DATABASE_FIELD}
ENV DATABASE_NAME=${DATABASE_NAME}
ENV HOST=${HOST}
ENV TOKEN=${TOKEN}
# Set the entrypoint to run your Java application
ENTRYPOINT ["java", "-cp", "classes:dependency/*", "com.influxdb.examples.FlightExamples"]
```
{{% /expand %}}
{{% expand "View the Maven pom.xml" %}}
```xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.influxdb</groupId>
<artifactId>examples</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>com.influxdb.examples.FlightExamples</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-help-plugin</artifactId>
<version>3.2.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.4.1</version>
<executions>
<execution>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<shadedArtifactAttached>true</shadedArtifactAttached>
</configuration>
</execution>
</executions>
<configuration>
<minimizeJar>false</minimizeJar>
<filters>
<filter>
<artifact>*:*</artifact>
<excludes>
<exclude>META-INF/*.SF</exclude>
<exclude>META-INF/*.DSA</exclude>
<exclude>META-INF/*.RSA</exclude>
</excludes>
</filter>
</filters>
</configuration>
</plugin>
</plugins>
</build>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.arrow</groupId>
<artifactId>flight-sql</artifactId>
<version>11.0.0</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-all</artifactId>
<version>4.1.74.Final</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.7.30</version>
</dependency>
</dependencies>
</project>
```
{{% /expand %}}
{{< /expand-wrapper >}}
### Create the FlightQuery class
{{< expand-wrapper >}}
{{% expand "View FlightQuery.java" %}}
```java
package com.influxdb.examples;
import org.apache.arrow.flight.auth2.BearerCredentialWriter;
import org.apache.arrow.flight.CallHeaders;
import org.apache.arrow.flight.CallStatus;
import org.apache.arrow.flight.grpc.CredentialCallOption;
import org.apache.arrow.flight.Location;
import org.apache.arrow.flight.FlightClient;
import org.apache.arrow.flight.FlightClientMiddleware;
import org.apache.arrow.flight.FlightInfo;
import org.apache.arrow.flight.FlightStream;
import org.apache.arrow.flight.sql.FlightSqlClient;
import org.apache.arrow.flight.Ticket;
import org.apache.arrow.memory.BufferAllocator;
import org.apache.arrow.memory.RootAllocator;
import org.apache.arrow.vector.VectorSchemaRoot;
public class FlightQuery {
/* Get server credentials from environment variables */
public static final String DATABASE_NAME = System.getenv("DATABASE_NAME");
public static final String HOST = System.getenv("HOST");
public static final String TOKEN = System.getenv("TOKEN");
public static void main() {
System.out.println("Query InfluxDB with the Java Flight SQL Client");
// Create an interceptor that injects header metadata (database name) in every request.
FlightClientMiddleware.Factory f = info -> new FlightClientMiddleware() {
@Override
public void onBeforeSendingHeaders(CallHeaders outgoingHeaders) {
outgoingHeaders.insert("database", DATABASE_NAME);
}
@Override
public void onHeadersReceived(CallHeaders incomingHeaders) {
}
@Override
public void onCallCompleted(CallStatus status) {
}
};
// Create a gRPC+TLS channel URI with HOST and port 443.
Location location = Location.forGrpcTls(HOST, 443);
// Set the allowed memory.
BufferAllocator allocator = new RootAllocator(Long.MAX_VALUE);
// Create a client with the allocator and gRPC channel.
FlightClient client = FlightClient.builder(allocator, location)
.intercept(f)
.build();
System.out.println("client" + client);
FlightSqlClient sqlClient = new FlightSqlClient(client);
System.out.println("sqlClient: " + sqlClient);
// Define the SQL query to execute.
String query = "SELECT * FROM home";
/* Construct a bearer credential using TOKEN.
Construct a credentials option using the bearer credential.
*/
CredentialCallOption auth = new CredentialCallOption(new BearerCredentialWriter(TOKEN));
/* Execute the query.
If successful, execute returns a FlightInfo object that contains metadata
and an endpoints list.
Each endpoint contains the following:
- A list of addresses where you can retrieve the data.
- A `ticket` value that identifies the data to retrieve.
*/
FlightInfo flightInfo = sqlClient.execute(query, auth);
// Extract the Flight ticket from the response.
Ticket ticket = flightInfo.getEndpoints().get(0).getTicket();
// Pass the ticket to request the Arrow stream data from the endpoint.
final FlightStream stream = sqlClient.getStream(ticket, auth);
// Process all the Arrow stream data.
while (stream.next()) {
try {
// Get the current vector data from the stream.
final VectorSchemaRoot root = stream.getRoot();
System.out.println(root.contentToTSVString());
} catch (Exception e) {
// Handle exceptions.
System.out.println("Error executing FlightSqlClient: " + e.getMessage());
}
}
try {
// Close the stream and release resources.
stream.close();
} catch (Exception e) {
// Handle exceptions.
System.out.println("Error closing stream: " + e.getMessage());
}
try {
// Close the client
sqlClient.close();
} catch (Exception e) {
// Handle exceptions.
System.out.println("Error closing client: " + e.getMessage());
}
}
}
```
{{% /expand %}}
{{< /expand-wrapper >}}
1. In your `<PROJECT_ROOT>/src/main/java` directory, create the `com/influxdb/examples` subdirectories for the `com.influxdb.examples` package.
2. In the `examples` directory from the preceding step, create the `FlightQuery.java` class file.
You should have the following directory structure:
<!-- Can't make filesystem-diagram shortcode indent properly -->
```
PROJECT_ROOT
└──src
└──main
└──java
└──com
└──influxdb
└──examples
└──FlightQuery.java
```
3. In `FlightQuery.java`:
1. Add the package name:
```java
package com.influxdb.examples;
```
2. Add `import` statements for the following packages. You'll use classes and methods
from these packages in the remaining steps:
- `org.apache.arrow.flight.auth2.BearerCredentialWriter`
- `org.apache.arrow.flight.CallHeaders`
- `org.apache.arrow.flight.CallStatus`
- `org.apache.arrow.flight.grpc.CredentialCallOption`
- `org.apache.arrow.flight.Location`
- `org.apache.arrow.flight.FlightClient`
- `org.apache.arrow.flight.FlightClientMiddleware`
- `org.apache.arrow.flight.FlightInfo`
- `org.apache.arrow.flight.FlightStream`
- `org.apache.arrow.flight.sql.FlightSqlClient`
- `org.apache.arrow.flight.Ticket`
- `org.apache.arrow.memory.BufferAllocator`
- `org.apache.arrow.memory.RootAllocator`
- `org.apache.arrow.vector.VectorSchemaRoot`
3. Create a `FlightQuery` class.
4. In the `FlightQuery` class:
1. Define constants for server credentials.
- `DATABASE_NAME`
- `HOST`
- `TOKEN`
_The example `Dockerfile` defines environment variables for
these credentials._
2. Create a `main()` method.
### Create a query client
In the `FlightQuery.main()` method, do the following to create an SQL client that can connect to `HOST` and `DATABASE_NAME`:
1. Construct a _gRPC+TLS_ channel URI with `HOST` and port `443` for communicating with a [gRPC server over TLS](https://grpc.io/docs/guides/auth/#with-server-authentication-ssltls-4).
2. Instantiate `FlightClientMiddleware` and define an event callback
that inserts the following Flight request metadata header property:
```json
"database": "DATABASE_NAME"
```
3. Instantiate a `BufferAllocator` that sets the memory allowed for the client.
4. Create a `FlightClient` with the allocator and gRPC channel.
5. Instantiate a `FlightSqlClient` that wraps the `FlightClient` instance.
### Execute a query
In the `FlightQuery.main` method:
1. Instantiate a `CredentialCallOption` with `TOKEN` as a _bearer_ credential.
The result is a credential object that you'll pass in each request to the server.
2. Define a string that contains the SQL query to execute--for example:
```java
String query = "SELECT * FROM home";
```
3. Call the `FlightSqlClient.execute` method with the SQL query and the `CredentialCallOption`.
4. If successful, the `FlightSqlClient.execute` method responds with a `FlightInfo` object that contains metadata and an `endpoints: [...]` list.
Each endpoint contains the following:
- A list of addresses where you can retrieve the data.
- A `ticket` value that identifies the data to retrieve.
5. Extract the ticket from the response.
### Retrieve and process Arrow data
In the `FlightQuery.main()` method, do the following to retrieve the data stream described in the `FlightInfo` response:
1. Call the `FlightSqlClient.getStream` method with the _ticket_ and the `CredentialCallOption` to fetch the [Arrow stream](https://arrow.apache.org/docs/format/CStreamInterface.html).
2. Call the `FlightStream.getRoot` method to get the current vector data from the stream.
3. Process the data and handle exceptions. The example converts the vector data into tab-separated values and prints the result to `System.out`.
For more examples using Java to work with Arrow data, see the [Apache Arrow Java Cookbook](https://arrow.apache.org/cookbook/java/).
4. Finally, close the stream and client.
### Run the application
Follow these steps to build and run the application using Docker:
1. Copy the `Dockerfile` and `pom.xml` to your project root directory.
2. Open a terminal in your project root directory.
3. In your terminal, run the `docker build` command and pass `--build-arg` flags for the server credentials:
- **`DATABASE_NAME`**: your [InfluxDB Cloud Serverless bucket](/influxdb/cloud-serverless/admin/buckets/)
- **`HOST`**: your [InfluxDB Cloud Serverless region](/influxdb/cloud-serverless/reference/regions/) hostname (URL without the "https://")
- **`TOKEN`**: your [InfluxDB Cloud Serverless API token](/influxdb/cloud-serverless/get-started/setup/) with _read_ permission to the bucket
```sh
docker build \
--build-arg DATABASE_NAME=INFLUX_BUCKET \
--build-arg HOST=cloud2.influxdata.com \
--build-arg TOKEN=INFLUX_TOKEN \
-t javaflight .
```
The command builds a Docker image named `javaflight`.
4. To run the application in a new Docker container, enter the following command:
```sh
docker run javaflight
```
The output is the query data in TSV-format.
## Troubleshoot Arrow Flight requests
For the list of Arrow Flight error response codes, see the [Arrow Flight RPC documentation](https://arrow.apache.org/docs/format/Flight.html#error-handling).

View File

@ -4,11 +4,11 @@ description: The Go Flight SQL client integrates with golang scripts and applica
external_url: https://pkg.go.dev/github.com/apache/arrow/go/v12/arrow/flight/flightsql
menu:
influxdb_cloud_serverless:
name: Go Flight SQL client
name: Go
parent: Flight SQL clients
identifier: go-flightsql-client
params:
url: https://pkg.go.dev/github.com/apache/arrow/go/v12/arrow/flight/flightsql
identifier: go-flightsql
influxdb/cloud-serverless/tags: [Golang, gRPC, SQL, Flight SQL, client libraries]
weight: 201
---

View File

@ -0,0 +1,18 @@
---
title: Java Flight SQL package
description: The `org.apache.arrow.flight.sql` package integrates with Java applications to query and retrieve data from Flight database servers using RPC and SQL.
external_url: https://arrow.apache.org/docs/java/reference/org/apache/arrow/flight/sql/package-summary.html
menu:
influxdb_cloud_serverless:
name: Java
parent: Flight SQL clients
identifier: java-flightsql-client
params:
url: https://arrow.apache.org/docs/java/reference/org/apache/arrow/flight/sql/package-summary.html
influxdb/cloud-serverless/tags: [Java, gRPC, SQL, Flight SQL, client libraries]
weight: 201
---
The [`org.apache.arrow.flight.sql`](https://arrow.apache.org/docs/java/reference/org/apache/arrow/flight/sql/package-summary.html) package integrates with Java applications to query and retrieve data from Flight database servers using RPC and SQL.
<a href="https://arrow.apache.org/docs/java/reference/org/apache/arrow/flight/sql/package-summary.html" target="_blank" class="btn github">Java Flight SQL package</a>

View File

@ -4,8 +4,9 @@ description: The Python `flightsql-dbapi` library integrates with Python scripts
external_url: https://github.com/influxdata/flightsql-dbapi
menu:
influxdb_cloud_serverless:
name: Python Flight SQL client
name: Python
parent: Flight SQL clients
identifier: python-flightsql-client
params:
url: https://github.com/influxdata/flightsql-dbapi
influxdb/cloud-serverless/tags: [Python, gRPC, SQL, Flight SQL, client libraries]

View File

@ -276,7 +276,7 @@ from(bucket: "example-cloud-bucket")
The `migration.batchInterval` setting controls the time range queried by each batch.
The "density" of the data in your InfluxDB Cloud bucket and your InfluxDB Cloud
organization's [rate limits and quotas](/influxdb/cloud-serverless/admin/accounts/limits/)
organization's [rate limits and quotas](/influxdb/cloud-serverless/admin/billing/limits/)
determine what your batch interval should be.
For example, if you're migrating data collected from hundreds of sensors with

View File

@ -10,7 +10,7 @@ aliases:
menu:
influxdb_cloud:
name: Account management
alt_engine: /influxdb/cloud-iox/admin/accounts/
alt_engine: /influxdb/cloud-serverless/admin/accounts/
---
{{< children >}}

View File

@ -13,6 +13,7 @@ menu:
influxdb_cloud:
parent: Account management
name: Manage billing
alt_engine: /influxdb/cloud-serverless/admin/billing/
---
Learn how to upgrade your plan, access billing details, and review and resolve plan limit overages:

View File

@ -10,6 +10,7 @@ menu:
name: Change your password
parent: Account management
weight: 105
alt_engine: /influxdb/cloud-serverless/admin/accounts/change-password/
---
To change or reset your InfluxDB Cloud password:

View File

@ -14,7 +14,7 @@ menu:
related:
- /flux/v0.x/stdlib/experimental/usage/from/
- /flux/v0.x/stdlib/experimental/usage/limits/
alt_engine: /influxdb/cloud-iox/admin/accounts/data-usage/
alt_engine: /influxdb/cloud-serverless/admin/billing/data-usage/
---
View the statistics of your data usage and rate limits (reads, writes, and delete limits) on the Usage page. Some usage data affects monthly costs ([pricing vectors](/influxdb/cloud/account-management/pricing-plans/#pricing-vectors)) and other usage data (for example, delete limits), does not affect pricing. For more information, see the [InfluxDB Cloud limits and adjustable quotas](/influxdb/cloud/account-management/limits/).

View File

@ -12,7 +12,7 @@ related:
- /flux/v0.x/stdlib/experimental/usage/from/
- /flux/v0.x/stdlib/experimental/usage/limits/
- /influxdb/cloud/write-data/best-practices/resolve-high-cardinality/
alt_engine: /influxdb/cloud-iox/admin/accounts/limits/
alt_engine: /influxdb/cloud-serverless/admin/billing/limits/
---
InfluxDB Cloud applies (non-adjustable) global system limits and adjustable service quotas on a per organization basis.

View File

@ -11,6 +11,7 @@ menu:
influxdb_cloud:
parent: Account management
name: Cancel InfluxDB Cloud
alt_engine: /influxdb/cloud-serverless/admin/accounts/cancel-account/
---
To cancel your {{< cloud-name >}} subscription, complete the following steps:

View File

@ -11,6 +11,7 @@ menu:
influxdb_cloud:
parent: Account management
name: Pricing plans
alt_engine: /influxdb/cloud-serverless/admin/billing/pricing-plans/
---
InfluxDB Cloud offers a [Free Plan](#free-plan), a [Usage-Based Plan](#usage-based-plan) to pay as you go, and a discounted [Annual Plan](#annual-plan).

View File

@ -8,7 +8,7 @@ menu:
name: Switch InfluxDB accounts
parent: Account management
weight: 105
alt_engine: /influxdb/cloud-iox/admin/accounts/switch-account/
alt_engine: /influxdb/cloud-serverless/admin/accounts/switch-account/
---
If you belong to more than one {{< cloud-name >}} account with the same email address, you can switch from one account to another while staying logged in.

View File

@ -10,7 +10,7 @@ menu:
weight: 105
related:
- /influxdb/cloud/account-management/switch-account/
alt_engine: /influxdb/cloud-iox/admin/organizations/switch-org/
alt_engine: /influxdb/cloud-serverless/admin/organizations/switch-org/
---
If you belong to more than one {{< cloud-name >}} organization with the same email address, you can switch from one organization to another while staying logged in.

View File

@ -6,7 +6,7 @@ menu:
influxdb_cloud:
name: Migrate data
weight: 9
alt_engine: /influxdb/cloud-iox/write-data/migrate-data/
alt_engine: /influxdb/cloud-serverless/write-data/migrate-data/
---
Migrate data to InfluxDB from other InfluxDB instances including by InfluxDB OSS

View File

@ -9,7 +9,7 @@ menu:
name: Migrate from Cloud to Cloud
parent: Migrate data
weight: 102
alt_engine: /influxdb/cloud-iox/write-data/migrate-data/migrate-tsm-to-iox/
alt_engine: /influxdb/cloud-serverless/write-data/migrate-data/migrate-tsm-to-iox/
---
To migrate data from one InfluxDB Cloud organization to another, query the

View File

@ -30,7 +30,7 @@ InfluxDB Cloud account and, on your organization's homepage, and then look for
bottom of the far-right column.
- [Migrate data from TSM to TSM](/influxdb/cloud/migrate-data/migrate-cloud-to-cloud/).
- [Migrate data TSM to IOx](/influxdb/cloud-iox/write-data/migrate-data/migrate-tsm-to-iox/)
- [Migrate data TSM to IOx](/influxdb/cloud-serverless/write-data/migrate-data/migrate-tsm-to-iox/)
{{% note %}}
#### Dual write into both organizations

View File

@ -9,7 +9,7 @@ weight: 10
influxdb/cloud/tags: [organizations]
related:
- /influxdb/cloud/account-management/
alt_engine: /influxdb/cloud-iox/admin/organizations/
alt_engine: /influxdb/cloud-serverless/admin/organizations/
---
An **organization** is a workspace for a group of users.

View File

@ -8,7 +8,7 @@ menu:
parent: Manage organizations
weight: 105
influxdb/cloud/tags: [buckets]
alt_engine: /influxdb/cloud-iox/admin/buckets/
alt_engine: /influxdb/cloud-serverless/admin/buckets/
---
A **bucket** is a named location where time series data is stored.

View File

@ -14,7 +14,7 @@ related:
- /influxdb/cloud/reference/key-concepts/data-elements/
- /influxdb/cloud/organizations/buckets/create-bucket/
- /influxdb/cloud/reference/cli/influx/
alt_engine: /influxdb/cloud-iox/admin/buckets/manage-explicit-bucket-schemas/
alt_engine: /influxdb/cloud-serverless/admin/buckets/manage-explicit-bucket-schemas/
---
Use [**explicit bucket schemas**](/influxdb/cloud/reference/key-concepts/data-elements/#bucket-schema) to enforce [column names](/influxdb/cloud/reference/glossary/#column), [tags](/influxdb/cloud/reference/glossary/#tag), [fields](/influxdb/cloud/reference/glossary/#field), and

View File

@ -9,7 +9,7 @@ menu:
name: Create a bucket
parent: Manage buckets
weight: 201
alt_engine: /influxdb/cloud-iox/admin/buckets/create-bucket/
alt_engine: /influxdb/cloud-serverless/admin/buckets/create-bucket/
---
Use the InfluxDB user interface (UI), the `influx` command line interface (CLI),
@ -126,7 +126,7 @@ The following example creates a bucket with a retention period of `86,400` secon
```
_For information about **InfluxDB API options and response codes**, see
[InfluxDB API Buckets reference documentation](/influxdb/cloud-iox/api/#operation/PostBuckets)._
[InfluxDB API Buckets reference documentation](/influxdb/cloud-serverless/api/#operation/PostBuckets)._
{{% /tab-content %}}
<!------------------------------ END API CONTENT ------------------------------>

View File

@ -7,7 +7,7 @@ menu:
name: Update a bucket
parent: Manage buckets
weight: 202
alt_engine: /influxdb/cloud-iox/admin/buckets/update-bucket/
alt_engine: /influxdb/cloud-serverless/admin/buckets/update-bucket/
---
Use the InfluxDB user interface (UI), the `influx` command line interface (CLI), or the InfluxDB HTTP API to update a bucket.

View File

@ -7,7 +7,7 @@ menu:
name: View buckets
parent: Manage buckets
weight: 202
alt_engine: /influxdb/cloud-iox/admin/buckets/view-buckets/
alt_engine: /influxdb/cloud-serverless/admin/buckets/view-buckets/
---
## View buckets in the InfluxDB UI

View File

@ -9,7 +9,7 @@ influxdb/cloud/tags: [telegraf]
related:
- /influxdb/cloud/write-data/no-code/use-telegraf/manual-config/
- /influxdb/cloud/write-data/no-code/use-telegraf/auto-config/
alt_engine: /influxdb/cloud-iox/write-data/use-telegraf/telegraf-configs/
alt_engine: /influxdb/cloud-serverless/write-data/use-telegraf/telegraf-configs/
---
{{< duplicate-oss >}}

View File

@ -12,7 +12,7 @@ related:
- /influxdb/cloud/write-data/no-code/use-telegraf/manual-config/
- /influxdb/cloud/write-data/no-code/use-telegraf/auto-config/
- /influxdb/cloud/telegraf-configs/update/
alt_engine: /influxdb/cloud-iox/write-data/use-telegraf/telegraf-configs/create/
alt_engine: /influxdb/cloud-serverless/write-data/use-telegraf/telegraf-configs/create/
---
{{< duplicate-oss >}}

View File

@ -11,7 +11,7 @@ menu:
aliases:
- /influxdb/cloud/write-data/no-code/use-telegraf/auto-config/delete-telegraf-config/
- /influxdb/cloud/collect-data/use-telegraf/auto-config/delete-telegraf-config
alt_engine: /influxdb/cloud-iox/write-data/use-telegraf/telegraf-configs/remove/
alt_engine: /influxdb/cloud-serverless/write-data/use-telegraf/telegraf-configs/remove/
---
{{< duplicate-oss >}}

View File

@ -8,7 +8,7 @@ menu:
influxdb_cloud:
name: Update a config
parent: Telegraf configurations
alt_engine: /influxdb/cloud-iox/write-data/use-telegraf/telegraf-configs/update/
alt_engine: /influxdb/cloud-serverless/write-data/use-telegraf/telegraf-configs/update/
---
{{< duplicate-oss >}}

View File

@ -8,7 +8,7 @@ menu:
influxdb_cloud:
name: View configs
parent: Telegraf configurations
alt_engine: /influxdb/cloud-iox/write-data/use-telegraf/telegraf-configs/view/
alt_engine: /influxdb/cloud-serverless/write-data/use-telegraf/telegraf-configs/view/
---
{{< duplicate-oss >}}

View File

@ -12,7 +12,7 @@ related:
- https://grafana.com/docs/, Grafana documentation
- /influxdb/cloud/query-data/get-started/
- /influxdb/cloud/query-data/influxql/
alt_engine: /influxdb/cloud-iox/visualize-data/grafana/
alt_engine: /influxdb/cloud-serverless/visualize-data/grafana/
---
{{< duplicate-oss >}}

View File

@ -13,7 +13,7 @@ related:
- /influxdb/cloud/reference/syntax/line-protocol/
- /influxdb/cloud/reference/syntax/annotated-csv/
- /influxdb/cloud/reference/cli/influx/write/
alt_engine: /influxdb/cloud-iox/write-data/csv/
alt_engine: /influxdb/cloud-serverless/write-data/csv/
---
{{< duplicate-oss >}}

View File

@ -14,7 +14,7 @@ menu:
influxdb_cloud:
name: Telegraf (agent)
parent: No-code solutions
alt_engine: /influxdb/cloud-iox/write-data/use-telegraf/
alt_engine: /influxdb/cloud-serverless/write-data/use-telegraf/
---
[Telegraf](https://www.influxdata.com/time-series-platform/telegraf/) is InfluxData's

View File

@ -10,7 +10,7 @@ menu:
weight: 201
related:
- /influxdb/cloud/telegraf-configs/create/
alt_engine: /influxdb/cloud-iox/write-data/use-telegraf/configure/auto-config/
alt_engine: /influxdb/cloud-serverless/write-data/use-telegraf/configure/auto-config/
---
The InfluxDB user interface (UI) can automatically create

View File

@ -5,7 +5,7 @@ menu:
influxdb_cloud:
parent: Telegraf (agent)
weight: 201
alt_engine: /influxdb/cloud-iox/write-data/use-telegraf/dual-write/
alt_engine: /influxdb/cloud-serverless/write-data/use-telegraf/dual-write/
---
{{< duplicate-oss >}}

View File

@ -17,7 +17,7 @@ related:
- /{{< latest "telegraf" >}}/plugins//
- /influxdb/cloud/telegraf-configs/create/
- /influxdb/cloud/telegraf-configs/update/
alt_engine: /influxdb/cloud-iox/write-data/use-telegraf/configure/manual-config/
alt_engine: /influxdb/cloud-serverless/write-data/use-telegraf/configure/manual-config/
---
Use the Telegraf `influxdb_v2` output plugin to collect and write metrics into an InfluxDB v2.0 bucket.

View File

@ -46,7 +46,7 @@ influxdb:
influxdb_cloud:
name: InfluxDB Cloud (TSM)
altname: InfluxDB Cloud (TSM)
altname: InfluxDB Cloud
namespace: influxdb
menu_category: managed
versions: [cloud]
@ -55,7 +55,7 @@ influxdb_cloud:
influxdb_cloud_serverless:
name: InfluxDB Cloud Serverless
altname: InfluxDB Cloud Serverless
altname: InfluxDB Cloud
namespace: influxdb
menu_category: managed
versions: [cloud-serverless]
@ -64,7 +64,7 @@ influxdb_cloud_serverless:
influxdb_cloud_dedicated:
name: InfluxDB Cloud Dedicated
altname: InfluxDB Cloud Dedicated
altname: InfluxDB Cloud
namespace: influxdb
menu_category: managed
versions: [cloud-dedicated]

View File

@ -33,14 +33,6 @@
<div class="category">
<h4>Self-managed</h4>
<div class="category-card">
<div class="product">
<h3><a href="/influxdb/{{ $influxdbVersionV2 }}/">InfluxDB OSS <span class="version">{{ replaceRE "v" "" $influxdbVersionV2 }}</span></a></h3>
<p>The open source time series platform designed to store, query, and process time series data.</p>
<div class="product-links">
<a href="/influxdb/{{ $influxdbVersionV2 }}/">View documentation</a>
<a href="/influxdb/{{ $influxdbVersionV2 }}/get-started/">Get started</a>
</div>
</div>
<div class="product">
<h3><a href="/enterprise_influxdb/{{ $enterpriseVersion }}/">InfluxDB Enterprise <span class="version">{{ replaceRE "v" "" $enterpriseVersion }}</span></a></h3>
<p>Highly available InfluxDB built for high write and query workloads.</p>
@ -49,19 +41,19 @@
<a href="/enterprise_influxdb/{{ $enterpriseVersion }}/introduction/">Get started</a>
</div>
</div>
<div class="product">
<h3><a href="/influxdb/{{ $influxdbVersionV2 }}/">InfluxDB OSS <span class="version">{{ replaceRE "v" "" $influxdbVersionV2 }}</span></a></h3>
<p>The open source time series platform designed to store, query, and process time series data.</p>
<div class="product-links">
<a href="/influxdb/{{ $influxdbVersionV2 }}/">View documentation</a>
<a href="/influxdb/{{ $influxdbVersionV2 }}/get-started/">Get started</a>
</div>
</div>
</div>
</div>
<div class="category">
<h4>Managed by InfluxData</h4>
<div class="category-card">
<div class="product">
<h3><a href="/influxdb/cloud/">InfluxDB Cloud <span class="version">TSM</span></a></h3>
<p>Managed InfluxDB powered by the InfluxDB <strong>TSM</strong> storage engine deployed in the cloud.</p>
<div class="product-links">
<a href="/influxdb/cloud/">View documentation</a>
<a href="/influxdb/cloud/get-started/">Get started</a>
</div>
</div>
<div class="product new">
<h3><a href="/influxdb/cloud-serverless/">InfluxDB Cloud Serverless</a></h3>
<p>Managed InfluxDB powered by the InfluxDB <strong>IOx</strong> storage engine deployed in the cloud.</p>
@ -78,6 +70,14 @@
<a href="/influxdb/cloud-dedicated/get-started/">Get started</a>
</div>
</div>
<div class="product">
<h3><a href="/influxdb/cloud/">InfluxDB Cloud <span class="version">TSM</span></a></h3>
<p>Managed InfluxDB powered by the InfluxDB <strong>TSM</strong> storage engine deployed in the cloud.</p>
<div class="product-links">
<a href="/influxdb/cloud/">View documentation</a>
<a href="/influxdb/cloud/get-started/">Get started</a>
</div>
</div>
</div>
</div>
</div>

View File

@ -9,20 +9,22 @@
{{ $altEngine := .Page.Params.alt_engine | default "" }}
{{ $sortedProducts := sort .Site.Data.products "list_order" "asc"}}
<div class="dropdown">
{{ if or (eq $product nil) (eq $product "platform") (eq $product "resources") }}
<p class="selected">Select product</p>
{{ else if or $isCloud $isIOx $isDedicated }}
{{ $scratch.Set "cloud-type" "" }}
{{ if $isCloud }}{{ $scratch.Set "cloud-type" $.Site.Data.products.influxdb_cloud.altname}}
{{ else if $isIOx }}{{ $scratch.Set "cloud-type" $.Site.Data.products.influxdb_cloud_serverless.altname }}
{{ else if $isDedicated }}{{ $scratch.Set "cloud-type" $.Site.Data.products.influxdb_cloud_dedicated.altname }}
{{ end }}
{{ $cloudType := $scratch.Get "cloud-type" }}
<p class="selected">{{ $cloudType }}</p>
{{ else }}
{{ $productData := (index .Site.Data.products $product) }}
<p class="selected">{{ if $productData.altname }}{{ $productData.altname }}{{ else }}{{ $productData.name }}{{ end }}</p>
{{ $scratch.Set "displayName" "" }}
{{ if $isCloud }}{{ $scratch.Set "displayName" $.Site.Data.products.influxdb_cloud.name}}
{{ else if $isIOx }}{{ $scratch.Set "displayName" $.Site.Data.products.influxdb_cloud_serverless.name }}
{{ else if $isDedicated }}{{ $scratch.Set "displayName" $.Site.Data.products.influxdb_cloud_dedicated.name }}
{{ else }}
{{ $productData := (index .Site.Data.products $product) }}
{{ $scratch.Set "displayName" (cond (isset $productData "altname") $productData.altname $productData.name) }}
{{ end }}
{{ $displayName := $scratch.Get "displayName" }}
<p class="selected">{{ $displayName }}</p>
{{ end }}
<ul class="item-list products" data-category="Managed">
@ -35,14 +37,14 @@
{{/* ////////////////// BEGIN IOx WAYFINDING LOGIC ////////////////// */}}
{{ else if and $isCloud (eq .altname "InfluxDB Cloud Serverless")}}
{{ else if and $isCloud (eq .name "InfluxDB Cloud Serverless")}}
{{ $altIOxPage := $.GetPage ((replaceRE "influxdb/cloud" "influxdb/cloud-serverless" $.Page.RelPermalink) | replaceRE `\/$` "") }}
{{ if ne $altEngine "" }}
{{ $scratch.Set "link" $altEngine }}
{{ else if gt (len $altIOxPage.Title) 0 }}
{{ $scratch.Set "link" $altIOxPage.RelPermalink }}
{{ end }}
{{ else if and $isIOx (eq .altname "InfluxDB Cloud (TSM)")}}
{{ else if and $isIOx (eq .name "InfluxDB Cloud (TSM)")}}
{{ $altCloudPage := $.GetPage ((replaceRE "influxdb/cloud-serverless" "influxdb/cloud" $.Page.RelPermalink) | replaceRE `\/$` "") }}
{{ if ne $altEngine "" }}
{{ $scratch.Set "link" $altEngine }}
@ -72,7 +74,7 @@
{{ end }}
{{ $link := $scratch.Get "link" }}
<li>
<a href='{{ $link }}' {{ if $isCurrentProduct }}class="active"{{ end }}>{{ if .altname }}{{.altname}}{{ else }}{{ .name }}{{ end }}</a>
<a href='{{ $link }}' {{ if $isCurrentProduct }}class="active"{{ end }}>{{ .name }}</a>
</li>
{{ end }}
{{ end }}

View File

@ -1,6 +1,17 @@
{{ $length := .Get 0 | default "long" }}
{{- $productPathData := findRE "[^/]+.*?" .Page.RelPermalink -}}
{{- $currentCloud := index $productPathData 1 -}}
{{- $length := .Get 0 | default "long" -}}
{{- $scratch := newScratch -}}
{{- if eq $currentCloud "cloud" -}}
{{- $scratch.Set "cloudData" .Site.Data.products.influxdb_cloud -}}
{{- else if eq $currentCloud "cloud-serverless" -}}
{{- $scratch.Set "cloudData" .Site.Data.products.influxdb_cloud_serverless -}}
{{- else if eq $currentCloud "cloud-dedicated" -}}
{{- $scratch.Set "cloudData" .Site.Data.products.influxdb_cloud_dedicated -}}
{{- end -}}
{{- $cloudData := $scratch.Get "cloudData" -}}
{{- if eq $length "long" }}
{{- .Site.Data.products.influxdb_cloud.name -}}
{{- $cloudData.name -}}
{{ else if eq $length "short" }}
{{- .Site.Data.products.influxdb_cloud.altname -}}
{{- $cloudData.altname -}}
{{ end -}}