> ## Documentation Index
> Fetch the complete documentation index at: https://www.getmaxim.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Traces

> Learn how to set up tracing using the Maxim platform. This guide covers the necessary steps to instrument your AI application and start monitoring and evaluating its performance.

## How to Set Up Traces?

We will cover the necessary steps to instrument your AI application and start monitoring and evaluating its performance.

<div className="w-full flex justify-end -mb-11">
  <LanguageSwitcher />
</div>

<Steps>
  <Step title="Create a repository">
    Select **Logs** from the sidebar and click the "Create repository" button.
  </Step>

  <Step title="Install SDK">
    <CodeGroup>
      ```package-install JS/TS theme={null}
      npm install @maximai/maxim-js
      ```

      ```bash Python theme={null}
      pip install maxim-py
      ```

      ```bash Go theme={null}
      go get github.com/maximhq/maxim-go
      ```

      ```groovy Java/Scala/Kotlin theme={null}
      implementation("ai.getmaxim:sdk:0.1.3")
      ```
    </CodeGroup>
  </Step>

  <Step title="Initialize SDK">
    <CodeGroup>
      ```typescript JS/TS theme={null}
      import { Maxim } from "@maximai/maxim-js"

      const maxim = new Maxim({ apiKey: "" });

      const logger = await maxim.logger({ id: "" });

      ```

      ```python Python theme={null}
      from maxim import Maxim

      # Initialized using MAXIM_API_KEY from env variables
      maxim = Maxim()

      # Initialized using MAXIM_LOG_REPO_ID from env variables
      logger = maxim.logger()
      ```

      ```go Go theme={null}
      import "github.com/maximhq/maxim-go"

      mx := maxim.Init(&maxim.MaximSDKConfig{ApiKey: ""})

      logger, err := mx.GetLogger(&logging.LoggerConfig{Id: ""})
      ```

      ```java Java theme={null}
      import ai.getmaxim.sdk.Maxim;
      import ai.getmaxim.sdk.Config;

      Maxim maxim = new Maxim(new Config(null, "api-key", null, false));

      Logger logger = maxim.logger(new LoggerConfig("id"));
      ```
    </CodeGroup>
  </Step>

  <Step title="Start tracing">
    <CodeGroup>
      ```typescript JS/TS theme={null}
      const trace = logger.trace({
        id: "trace-id", // Unique ID of the trace
        name: "user-query",
      });

      trace.input("Hello, how are you?");
      trace.output("I'm fine, thank you!");
      trace.end();
      ```

      ```python Python theme={null}
      from maxim.logger import TraceConfig

      trace = logger.trace({
        "id":"trace-id", # Unique ID of the trace
        "name":"user-query",
      })

      trace.set_input("Hello, how are you?")
      trace.set_output("I'm fine, thank you!")
      trace.end()
      ```

      ```go Go theme={null}
      trace := logger.Trace(&logging.TraceConfig{
      Id: "trace-id", // Unique ID of the trace
      Name: maxim.StrPtr("user-query"),
      })

      trace.SetInput("Hello, how are you?")
      trace.SetOutput("I'm fine, thank you!")
      trace.End()
      ```

      ```java Java theme={null}
      import ai.getmaxim.sdk.logger.components.Trace;
      import ai.getmaxim.sdk.logger.components.TraceConfig;

      Trace trace = logger.trace(new TraceConfig(
      "trace-id", // Unique ID of the trace
      "user-query"
      ));

      trace.setInput("Hello, how are you?");
      trace.setOutput("I'm fine, thank you!");
      trace.end();
      ```
    </CodeGroup>
  </Step>
</Steps>

<img src="https://mintcdn.com/maximai/fHnWe0mnvuD5228y/images/docs/tracing/via-sdk/trace.png?fit=max&auto=format&n=fHnWe0mnvuD5228y&q=85&s=6557f737f361e8c561f943ef5dcd9b67" alt="Traces" width="2390" height="1702" data-path="images/docs/tracing/via-sdk/trace.png" />

<Note>[Schedule a demo](https://getmaxim.ai/demo) to see how Maxim AI helps teams ship reliable agents.</Note>
