diff --git a/docs.json b/docs.json
index 48a910c..46993dd 100644
--- a/docs.json
+++ b/docs.json
@@ -19,10 +19,21 @@
"pages": [
"introduction",
"getting-started-guide/getting-started",
+ {
+ "group": "Try out Axiom",
+ "icon": "play",
+ "pages": [
+ "getting-started-guide/try-out-axiom",
+ "getting-started-guide/explore-axiom-playground",
+ "getting-started-guide/quickstart-using-sample-data",
+ "getting-started-guide/get-started-example-app"
+ ]
+ },
{
"group": "Learn about Axiom",
"icon": "book-font",
"pages": [
+ "getting-started-guide/learn-about-axiom",
"getting-started-guide/event-data",
"getting-started-guide/observability",
"getting-started-guide/feature-states",
@@ -74,31 +85,37 @@
"icon": "language",
"pages": [
"guides/send-logs-from-dotnet",
- "guides/opentelemetry-dotnet",
"guides/send-logs-from-apache-log4j",
"guides/apex",
"guides/opentelemetry-cloudflare-workers",
- "guides/opentelemetry-django",
"guides/go",
"guides/logrus",
- "guides/opentelemetry-go",
- "guides/opentelemetry-java",
"guides/javascript",
"guides/send-logs-from-laravel",
"send-data/nextjs",
- "guides/opentelemetry-nextjs",
- "guides/opentelemetry-nodejs",
"guides/pino",
"guides/python",
- "guides/opentelemetry-python",
"send-data/react",
"guides/send-logs-from-ruby-on-rails",
- "guides/opentelemetry-ruby",
"guides/rust",
"guides/winston",
"guides/zap"
]
},
+ {
+ "group": "Example apps",
+ "icon": "vial",
+ "pages": [
+ "guides/opentelemetry-dotnet",
+ "guides/opentelemetry-django",
+ "guides/opentelemetry-go",
+ "guides/opentelemetry-java",
+ "guides/opentelemetry-nextjs",
+ "guides/opentelemetry-nodejs",
+ "guides/opentelemetry-python",
+ "guides/opentelemetry-ruby"
+ ]
+ },
{
"group": "AWS",
"icon": "aws",
diff --git a/getting-started-guide/explore-axiom-playground.mdx b/getting-started-guide/explore-axiom-playground.mdx
new file mode 100644
index 0000000..d30fcb3
--- /dev/null
+++ b/getting-started-guide/explore-axiom-playground.mdx
@@ -0,0 +1,66 @@
+---
+title: 'Explore Axiom Playground'
+excerpt: 'This page explains how to try out Axiom without registration with the Axiom Playground.'
+---
+
+This page explains how to try out Axiom without registration with the [Axiom Playground](https://play.axiom.co/). It walks you through an example where you run a website and you want to keep an overview of the HTTP requests to this site with Axiom.
+
+## 1. Explore sample data
+
+1. Go to the [Axiom Playground](https://play.axiom.co/).
+1. Click the **Datasets** tab at the top of the page.
+1. In the list of datasets, click `sample-http-logs`.
+
+This displays the fields in the sample dataset `sample-http-logs`. In Axiom, an individual piece of data is an event, and a dataset is a collection of similar events. In this example, an event is an HTTP request to your website, and the dataset holds incoming data about all these HTTP requests.
+
+[Run in Playground](https://play.axiom.co/axiom-play-qf1k/datasets/sample-http-logs)
+
+## 2. Display stream of incoming data
+
+1. Click the **Stream** tab at the top of the page.
+1. Click **sample-http-logs** in the list.
+
+You see the data that Axiom receives realtime. In this example, this page displays the HTTP requests to your imaginary website.
+
+[Run in Playground](https://play.axiom.co/axiom-play-qf1k/stream/sample-http-logs)
+
+## 3. Analyze data
+
+### Query data
+
+1. Click the **Query** tab at the top of the page, and then click **Builder** in the top left. This enables you to query your data with a visual query builder.
+1. In the **Dataset** section, select **sample-http-logs** from the list of datasets.
+1. In the **Where** section, click **+**.
+1. Write **status == "500"**, and then press **Enter**.
+1. Click **Run**.
+
+You see all the HTTP requests with the status 500. This is important to know because this status indicates an internal server error, meaning that the server has encountered a situation that it can’t handle.
+
+[Run in Playground](https://play.axiom.co/axiom-play-qf1k/query?initForm=%7B%22apl%22%3A%22%5B'sample-http-logs'%5D%20%7C%20where%20status%20%3D%3D%20'500'%22%7D)
+
+### Run an APL query
+
+1. Click the **Query** tab at the top of the page, and then click **APL** in the top left. This enables you to query your data with the Axiom Processing Language (APL). For more information, see [Introduction to APL](/apl/introduction).
+1. In the text field, enter the following:
+ ```kusto
+ ['sample-http-logs']
+ | summarize count() by bin_auto(_time), status
+ ```
+1. Click **Run**.
+
+You see the number of HTTP requests of each status over time.
+
+[Run in Playground](https://play.axiom.co/axiom-play-qf1k/query?initForm=%7B%22apl%22%3A%22%5B'sample-http-logs'%5D%20%7C%20summarize%20count()%20by%20bin_auto(_time)%2C%20status%22%7D)
+
+## 4. Visualize data
+
+1. Click the **Dashboards** tab at the top of the page.
+1. Click **Http logs** in the list.
+
+You see a dashboard that displays important information about the HTTP requests to the website.
+
+## What’s next
+
+To try out Axiom with sample data, see [Quickstart using sample data](getting-started-guide/quickstart-using-sample-data).
+
+To check out Axiom with a sample app, see [Get started with example app](/getting-started-guide/get-started-example-app).
\ No newline at end of file
diff --git a/getting-started-guide/get-started-example-app.mdx b/getting-started-guide/get-started-example-app.mdx
new file mode 100644
index 0000000..5e685c1
--- /dev/null
+++ b/getting-started-guide/get-started-example-app.mdx
@@ -0,0 +1,62 @@
+---
+title: 'Get started with example app'
+excerpt: 'This page explains how to try out Axiom with an example app.'
+---
+
+This page explains how to try out Axiom with an example app that emits OpenTelemetry (OTel) trace data. There are many other ways you can send data to Axiom. For a full list, see [Send data](/send-data/ingest).
+
+Choose one of the following example apps:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+To try out Axiom without registration, see [Explore Axiom Playground](/getting-started-guide/explore-axiom-playground).
+
+To try out Axiom with sample data, see [Quickstart using sample data](/getting-started-guide/quickstart-using-sample-data).
\ No newline at end of file
diff --git a/getting-started-guide/getting-started.mdx b/getting-started-guide/getting-started.mdx
index 3c876e5..9daf881 100644
--- a/getting-started-guide/getting-started.mdx
+++ b/getting-started-guide/getting-started.mdx
@@ -10,6 +10,10 @@ tags:
+Axiom enables you to make the most of your event data without compromises: all your data, all the time, for all possible needs. Say goodbye to data sampling, waiting times, and hefty fees.
+
+This page explains how to start using Axiom and leverage the power of event data in your organization.
+
## 1. Send your data to Axiom
You can send data to Axiom in a variety of ways. Each individual piece of data is an event.
@@ -97,3 +101,10 @@ As your use of Axiom widens, customize it for your organization’s needs. For e
- Create and manage API tokens.
+
+## What’s next
+
+Choose one of the following learning pathways:
+
+- [Try out Axiom](/getting-started-guide/try-out-axiom) for a more hands-on experience that allows you to explore Axiom and quickly leverage the power of your event data.
+- [Learn about Axiom](/getting-started-guide/learn-about-axiom) for a more educational experience that explains the most important concepts and ideas behind Axiom and how your organization can benefit from Axiom’s offering.
\ No newline at end of file
diff --git a/getting-started-guide/learn-about-axiom.mdx b/getting-started-guide/learn-about-axiom.mdx
new file mode 100644
index 0000000..cc4d88f
--- /dev/null
+++ b/getting-started-guide/learn-about-axiom.mdx
@@ -0,0 +1,30 @@
+---
+title: 'Learn about Axiom'
+excerpt: 'This section offers a conceptual understanding of Axiom and its offering.'
+sidebarTitle: Overview
+---
+
+The following pages offer an educational experience that explains the most important concepts and ideas behind Axiom and how your organization can benefit from Axiom’s offering:
+
+
+Learn about the fundamentals of timestamped event data in Axiom
+
+
+
+Learn about how Axiom helps you leverage timestamped event data for observability purposes
+
+
+
+Learn about the key concepts in Axiom
+
+
+For a more hands-on experience that allows you to explore Axiom and quickly leverage the power of your event data, see [Try out Axiom](/getting-started-guide/try-out-axiom).
\ No newline at end of file
diff --git a/getting-started-guide/quickstart-using-sample-data.mdx b/getting-started-guide/quickstart-using-sample-data.mdx
new file mode 100644
index 0000000..00d95c1
--- /dev/null
+++ b/getting-started-guide/quickstart-using-sample-data.mdx
@@ -0,0 +1,106 @@
+---
+title: 'Quickstart using sample data'
+excerpt: 'This page explains how to try out Axiom with sample data.'
+---
+
+This page explains how to try out Axiom with sample data. It walks you through an example where you want to keep track of OpenTelemetry (OTel) traces with Axiom.
+
+By following this page, you will:
+
+1. Explore the structure of sample data.
+1. Display stream of incoming data.
+1. Analyze the data.
+1. Visualize the data by creating a simple dashboard.
+1. Set up a monitor that alerts you about internal server errors.
+
+To try out Axiom without registration, see [Explore Axiom Playground](/getting-started-guide/explore-axiom-playground).
+
+## 1. Explore sample data
+
+1. [Sign up for an Axiom account](https://app.axiom.co/register). All you need is an email address.
+1. Click the **Datasets** tab at the top of the page.
+1. In the list of datasets, click `otel-demo-traces`.
+
+This displays the fields in the sample dataset `otel-demo-traces`.
+
+## 2. Display stream of incoming data
+
+1. Click the **Stream** tab at the top of the page.
+1. Click **otel-demo-traces** in the list.
+
+You see the data that Axiom receives realtime.
+
+## 3. Analyze data
+
+### Query data
+
+1. Click the **Query** tab at the top of the page, and then click **Builder** in the top left. This enables you to query your data with a visual query builder.
+1. In the **Dataset** section, select **otel-demo-traces** from the list of datasets.
+1. In the **Where** section, click **+**.
+1. Write **service.name == frontend**, and then press **Enter**.
+1. Click **Run**.
+
+You see all the traces for the Frontend service.
+
+### Run an APL query
+
+1. Click the **Query** tab at the top of the page, and then click **APL** in the top left. This enables you to query your data with the Axiom Processing Language (APL). For more information, see [Introduction to APL](/apl/introduction).
+1. In the text field, enter the following:
+ ```kusto
+ ['otel-demo-traces']
+ | where duration > 5ms
+ | summarize count() by bin_auto(_time), ['service.name']
+ ```
+1. Click **Run**.
+
+You see the number of requests taking longer than 5 ms for each service over time.
+
+## 4. Visualize data
+
+1. Click the **Dashboards** tab at the top of the page.
+1. Click **OpenTelemetry Traces (otel-demo-traces)** in the list.
+
+You see a dashboard that displays important information about the OTel traces.
+
+TODO from here
+
+## 5. Create new dashboard
+
+1. Click the **Dashboards** tab at the top of the page, and then click **New dashboard** on the right.
+1. Name the dashboard and click **Create**.
+1. Click **Add a chart**, and then click **Timeseries**.
+1. In the **Dataset** section, select **otel-demo-traces**.
+1. In the **Summarize** section, click **no group** to the right of **by**, and then select **service.name**.
+1. Click **Save**.
+
+You created a simple dashboard that displays the number of requests for each service over time.
+
+## 6. Monitor data for issues
+
+### Create notifier
+
+1. Click the **Monitors** tab at the top of the page.
+1. In the top left, click **Notifiers**, and then click **New notifier** on the top right.
+1. In **Name**, enter **Slow requests notifier**.
+1. In **Users**, enter your email address, and then click **+** on the right.
+1. Click **Create**.
+
+### Create monitor
+
+1. In the top left, click **Monitors**, and then click **New monitor** on the top right.
+1. Click **Threshold monitor**.
+1. In **Check options**, enter `10000` as the value.
+1. Click **+ Add notifier**, and then select **Email: Slow requests notifier**.
+1. In the **APL** section, enter the following:
+ ```kusto
+ ['otel-demo-traces']
+ | where duration > 5ms
+ | summarize count() by bin_auto(_time)
+ ```
+1. Click **Create**.
+
+You created a monitor that automatically sends a notification to your email address if the number of requests taking longer than 5 ms is higher than 10,000 in ten minutes.
+
+## What's next
+
+To check out Axiom with a sample app, see [Get started with example app](/getting-started-guide/get-started-example-app).
\ No newline at end of file
diff --git a/getting-started-guide/try-out-axiom.mdx b/getting-started-guide/try-out-axiom.mdx
new file mode 100644
index 0000000..adcf24f
--- /dev/null
+++ b/getting-started-guide/try-out-axiom.mdx
@@ -0,0 +1,30 @@
+---
+title: 'Try out Axiom'
+excerpt: 'This section offers a hands-on experience of Axiom and its features.'
+sidebarTitle: Overview
+---
+
+The following pages offer a hands-on experience that allows you to explore Axiom and quickly leverage the power of your event data:
+
+
+Explore Axiom without registration
+
+
+
+Try out Axiom with sample data
+
+
+
+Check out Axiom with a sample app
+
+
+For a more educational experience that explains the most important concepts and ideas behind Axiom and how your organization can benefit from Axiom’s offering, see [Learn about Axiom](/getting-started-guide/learn-about-axiom).
\ No newline at end of file
diff --git a/guides/opentelemetry-django.mdx b/guides/opentelemetry-django.mdx
index 9b59810..2e7e67e 100644
--- a/guides/opentelemetry-django.mdx
+++ b/guides/opentelemetry-django.mdx
@@ -2,7 +2,7 @@
title: 'Send OpenTelemetry data from a Django app to Axiom'
description: 'This guide explains how to send OpenTelemetry data from a Django app to Axiom using the Python OpenTelemetry SDK.'
overview: 'Django framework with OpenTelemetry integration'
-sidebarTitle: Django using OTel
+sidebarTitle: Django
tags: ['guides', 'django', 'otel', 'opentelemetry', 'python']
logoId: 'openTelemetry'
---
diff --git a/guides/opentelemetry-dotnet.mdx b/guides/opentelemetry-dotnet.mdx
index cda980f..0889041 100644
--- a/guides/opentelemetry-dotnet.mdx
+++ b/guides/opentelemetry-dotnet.mdx
@@ -2,7 +2,7 @@
title: 'OpenTelemetry using .NET'
description: 'This guide explains how to configure a .NET app using the .NET OpenTelemetry SDK to send telemetry data to Axiom.'
overview: '.NET with OpenTelemetry for enhanced observability'
-sidebarTitle: .NET using OTel
+sidebarTitle: .NET
tags: ['guides', '.NET', 'dotnet', 'OpenTelemetry', 'otel']
logoId: 'openTelemetry'
---
diff --git a/guides/opentelemetry-go.mdx b/guides/opentelemetry-go.mdx
index 23e7c61..2c8bce6 100644
--- a/guides/opentelemetry-go.mdx
+++ b/guides/opentelemetry-go.mdx
@@ -2,7 +2,7 @@
title: 'OpenTelemetry using Golang'
description: 'This guide explains how to configure a Go app using the Go OpenTelemetry SDK to send telemetry data to Axiom.'
overview: 'Go language with OpenTelemetry for distributed tracing'
-sidebarTitle: Golang using OTel
+sidebarTitle: Golang
tags: ['guides', 'golang', 'go', 'otel', 'opentelemetry']
logoId: 'openTelemetry'
---
diff --git a/guides/opentelemetry-java.mdx b/guides/opentelemetry-java.mdx
index bddd9cf..21ee6af 100644
--- a/guides/opentelemetry-java.mdx
+++ b/guides/opentelemetry-java.mdx
@@ -2,7 +2,7 @@
title: 'Send data from Java app using OpenTelemetry'
description: 'This page explains how to configure a Java app using the Java OpenTelemetry SDK to send telemetry data to Axiom.'
overview: 'Java with OpenTelemetry for comprehensive telemetry data'
-sidebarTitle: Java using OTel
+sidebarTitle: Java
tags: ['guides', 'java', 'opentelemetry', 'otel']
logoId: 'openTelemetry'
---
diff --git a/guides/opentelemetry-nextjs.mdx b/guides/opentelemetry-nextjs.mdx
index 1defbea..05d0bf5 100644
--- a/guides/opentelemetry-nextjs.mdx
+++ b/guides/opentelemetry-nextjs.mdx
@@ -2,7 +2,7 @@
title: 'OpenTelemetry using Next.js'
description: 'This guide demonstrates how to configure OpenTelemetry in a Next.js app to send telemetry data to Axiom.'
overview: 'Next.js with OpenTelemetry for full-stack tracing'
-sidebarTitle: Next.js using OTel
+sidebarTitle: Next.js
tags: ['guides', 'nextjs', 'opentelemetry', 'otel']
logoId: 'openTelemetry'
---
diff --git a/guides/opentelemetry-nodejs.mdx b/guides/opentelemetry-nodejs.mdx
index 69a4d89..ce690c4 100644
--- a/guides/opentelemetry-nodejs.mdx
+++ b/guides/opentelemetry-nodejs.mdx
@@ -2,7 +2,7 @@
title: 'OpenTelemetry using Node.js'
description: 'This guide demonstrates how to configure OpenTelemetry in a Node.js app to send telemetry data to Axiom.'
overview: 'Node.js runtime with OpenTelemetry integration'
-sidebarTitle: Node.js using OTel
+sidebarTitle: Node.js
tags: ['guides', 'nodejs', 'typescript', 'javascript', 'js', 'ts', 'otel', 'opentelemetry', 'node.js']
logoId: 'openTelemetry'
---
diff --git a/guides/opentelemetry-python.mdx b/guides/opentelemetry-python.mdx
index 04c9934..c3bb4fc 100644
--- a/guides/opentelemetry-python.mdx
+++ b/guides/opentelemetry-python.mdx
@@ -2,7 +2,7 @@
title: 'Send OpenTelemetry data from a Python app to Axiom'
description: 'This guide explains how to send OpenTelemetry data from a Python app to Axiom using the Python OpenTelemetry SDK.'
overview: 'Python with OpenTelemetry for distributed tracing'
-sidebarTitle: Python using OTel
+sidebarTitle: Python
tags: ['guides', 'python', 'py', 'opentelemetry', 'otel']
logoId: 'openTelemetry'
---
diff --git a/guides/opentelemetry-ruby.mdx b/guides/opentelemetry-ruby.mdx
index 0ab99eb..4997ff2 100644
--- a/guides/opentelemetry-ruby.mdx
+++ b/guides/opentelemetry-ruby.mdx
@@ -2,7 +2,7 @@
title: 'Send OpenTelemetry data from a Ruby on Rails app to Axiom'
description: 'This guide explains how to send OpenTelemetry data from a Ruby on Rails App to Axiom using the Ruby OpenTelemetry SDK.'
overview: 'Rails framework with OpenTelemetry integration'
-sidebarTitle: Ruby on Rails using OTel
+sidebarTitle: Ruby on Rails
tags: ['guides', 'ruby', 'ruby on rails', 'otel', 'opentelemetry']
logoId: 'openTelemetry'
---