Berserk Docs

Tables

Creating and managing tables in Berserk

A table is the top-level unit of data organization in Berserk. Each table is an independent collection of logs, traces, and metrics — typically representing a service, environment, or team.

Every cluster comes with a default table ready for ingestion. You can create additional tables to separate data by any boundary that makes sense for your organization.

The table name is the first element of every query:

default
| where level == "ERROR"
| take 10

Listing Tables

bzrk table list
Tables:
  default (ID: 019ae8e5-f2aa-79c2-a0a6-41d49b609f9e)

Creating a Table

bzrk table create myapp
Created table: myapp
  ID: 019cd6a4-ab94-7a90-bcc1-c380ae443daf

Ingest Tokens

An ingest token authenticates an OpenTelemetry Collector and routes its data to a specific table. Each table can have multiple ingest tokens (e.g., one per collector or environment), but each token is bound to exactly one table.

Creating an Ingest Token

bzrk ingest-token create --table myapp my-ingest-token
Created ingest token: my-ingest-token
  ID: 019cd6a6-5fe5-7a80-be74-9dba27894af8
  Table: myapp

  Token: ing_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

  Save this token now — it cannot be retrieved again.

The token value is only displayed at creation time. Store it securely — you will need it to configure your OpenTelemetry Collector.

Listing Ingest Tokens

bzrk ingest-token list

Querying a Table

bzrk search "myapp | take 10" --since "1h ago"

See Query Reference for the full query language reference.

On this page