Skip to content

Commit

Permalink
docs: Analyzer Doc Content (#2687)
Browse files Browse the repository at this point in the history
* Analyzer Doc Content

* docs(analyzer): moved settings to config

---------

Co-authored-by: Adnan Rahic <[email protected]>
  • Loading branch information
jfermi and adnanrahic authored Jun 9, 2023
1 parent 235c3f1 commit aad17b9
Show file tree
Hide file tree
Showing 12 changed files with 100 additions and 1 deletion.
42 changes: 42 additions & 0 deletions docs/docs/concepts/tracetest-analyzer-concepts.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# Tracetest Analyzer Concepts

The Tracetest Analyzer is a plugin-based framework used to analyze OpenTelemetry traces to help teams improve their instrumentation data, find potential problems and provide tips to fix the problems.

## Problem

Today, implementing open telemetry instrumentation in any application can become overwhelming as most of the documentation is not centralized, can be confusing and as the problem is relatively new there aren’t many good tutorials or guides to follow.

Usually, there are official libraries for the most common languages that can be used to add basic auto-instrumentation. Still, when it comes to adding custom instrumentation it can be confusing to understand if what is added is aligned to the Otel standard in terms of having the right information and/or not leaking any sensitive data.

Another problem is that adding instrumentation is the very first step to achieving and improving an application architecture, having visibility is just a way to understand what’s going on, but then it can become a little more difficult to understand what's next.

## Solution

Having a linting rule that is fully plugin-based to evaluate Tracetest to find problems. Allowing simple ways for users to understand the quality of their instrumentation data across the whole framework, catching possible security breaches, and providing tips and guidance on how to fix them.

## Concepts

### Plugin

Is the encapsulation of an `N` number of rules, with a name and a category that defines its specific goal.

### Rule

Contains the set of validations to be evaluated using one or multiple traces depending on the rule type. The result when applying a rule should be if it passed or failed, displaying extra information using tips for user guidance.

Each rule has a name, description, and logic to evaluate the whole trace or a specific span.

### Rule Types

There are two main rule types:

- Multi Trace. Requires a historic number of traces to identify and evaluate the rule.
- Single Trace. Encapsulated to the current trace, no external data is required.

:::note
[This documentation will be focused on single trace rules for timing purposes.](../configuration/tracetest-analyzer.md)
:::

### Linter Resource

Allows the user to configure the linter framework, a global on/off switch, an opt-in/out for specific plugins or rules, setting up required and optional rules, etc.
2 changes: 1 addition & 1 deletion docs/docs/configuration/provisioning.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Provisioning server
# Provisioning a Tracetest Server

Tracetest allows a server to be provisioned the first time a new Tracetest server is installed and launched. Provisioning sets certain resources in the server to the specified values, allowing you to configure the server. It is convenient in a CI/CD flow where you want to launch a server with a specified configuration.

Expand Down
47 changes: 47 additions & 0 deletions docs/docs/configuration/tracetest-analyzer.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# Tracetest Analyzer Settings

Tracetest Analyzer is provided in the Tracetest application to aid in the analysis of traces and easily pinpoint issues to speed up resolution.

:::tip
[Read more about Tracetest Analyzer concepts here.](../concepts/tracetest-analyzer-concepts.md)
:::

## Create a Test

For this example, we will use the Pokemon List test provided in the Tracetest Pokeshop demo.

Start Tracetest, click the **Create** button and select **Create New Test** in the drop down:

![Create a Test Button](../img/analyzer-create-test.png)

Select the **HTTP Request** trigger and click **Next**:

![Select HTTP Trigger](../img/analyzer-create-new-http-request.png)

Select **Pokemon List** and click **Next**:

![Select Pokeshop List](../img/analyzer-pokeshop-list.png)

![Select Pokeshop List Next](../img/analyzer-pokeshop-list-next.png)

Leave the default values and click **Create and Run**:

![Select Pokeshop Create Run ](../img/analyzer-pokeshop-list-create-run.png)

## View the Trace Analyzer Results

The Tracetest Analyzer results help teams improve their instrumentation data, find potential problems and provide tips to fix the problems.

![Analyzer Results](../img/analyzer-results.png)

Click the arrow next to any category to see suggestions for trace improvements:

![Analyzer Results Expanded](../img/analyzer-expanded.png)

## Disable Tracetest Analyzer

In the Tracetest UI, go to **Settings** and the **Analyzer** tab:

![Analyzer Settings](../img/analyzer-settings.png)

This feature will be available in the CLI very soon. Stay tuned!
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/docs/img/analyzer-create-test.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/docs/img/analyzer-expanded.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/docs/img/analyzer-pokeshop-list-next.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/docs/img/analyzer-pokeshop-list.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/docs/img/analyzer-results.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/docs/img/analyzer-settings.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
10 changes: 10 additions & 0 deletions docs/sidebars.js
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,11 @@ const sidebars = {
id: "configuration/trace-polling",
label: "Trace Polling",
},
{
type: "doc",
id: "configuration/tracetest-analyzer",
label: "Tracetest Analyzer",
},
{
type: "doc",
id: "configuration/demo",
Expand Down Expand Up @@ -243,6 +248,11 @@ const sidebars = {
id: "concepts/ad-hoc-testing",
label: "Ad-hoc Testing",
},
{
type: "doc",
id: "concepts/tracetest-analyzer-concepts",
label: "Tracetest Analyzer",
},
{
type: "doc",
id: "concepts/versioning",
Expand Down

0 comments on commit aad17b9

Please sign in to comment.