Skip to main content

Getting Started

Prerequisites​

What You Need
  • A modern web browser (Chrome, Firefox, or Edge)
  • curl and jq installed for lab exercises
  • An OpenTelemetry Collector or SDK for hands-on ingestion labs
  • Training environment credentials provided by your instructor

Accessing the Portal​

The xScaler portal is your central control plane for managing tenants, API keys, agents, and usage.

Production URL: https://portal.xscalerlabs.com

[Screenshot: xScaler portal login page]

Your instructor will provide login credentials for the shared training organisation. Once logged in you will see the organisation dashboard with your tenants, usage metrics, and agent fleet.


Production Endpoints​

xScaler uses a two-tier architecture. The control plane is global; edge endpoints are regional and provided by your instructor.

Control Plane​

ServiceURL
Portalhttps://portal.xscalerlabs.com
Agent API (OpAMP)wss://agents.xscalerlabs.com/v1/opamp

Edge Data Plane (per-region)​

Your instructor will give you the edge hostname for today's training (<edge> below).

SignalOTLP HTTPOTLP gRPC
Metricshttps://<edge>.m.xscalerlabs.com/otlp/v1/metrics—
Logshttps://<edge>.l.xscalerlabs.com/otlp/v1/logs—
Traceshttps://<edge>.t.xscalerlabs.com/otlp/v1/traces<edge>.t.xscalerlabs.com:4317
Example: EU West 1

If your instructor assigns edge euw1-01, your logs endpoint is: https://euw1-01.l.xscalerlabs.com/otlp/v1/logs


Lab Environment Variables​

Set these shell variables once at the start of each lab session. Replace euw1-01 with your assigned edge.

export PORTAL_BASE="https://portal.xscalerlabs.com"
export EDGE="euw1-01"
export METRICS_BASE="https://${EDGE}.m.xscalerlabs.com"
export LOGS_BASE="https://${EDGE}.l.xscalerlabs.com"
export TRACES_BASE="https://${EDGE}.t.xscalerlabs.com"
export GRAFANA_URL="https://<your-org-slug>.g.xscalerlabs.com"

Obtain a JWT token for portal API calls:

export JWT_TOKEN=$(curl -s -X POST "$PORTAL_BASE/auth/login" \
-H "Content-Type: application/json" \
-d '{"email":"YOUR_EMAIL","password":"YOUR_PASSWORD"}' | jq -r '.token')

echo "Token set: ${JWT_TOKEN:0:20}..."
Token Expiry

JWT tokens expire after 30 minutes. Re-run the login command if you get a 401 response.


Accessing Grafana​

Each organisation has a dedicated Grafana instance provisioned automatically.

URL pattern: https://<your-org-slug>.g.xscalerlabs.com

Your instructor will supply the exact URL and credentials for the training organisation.

[Screenshot: Grafana home dashboard showing pre-configured datasources]

The training Grafana has three datasources pre-configured:

  • xMetrics — Prometheus-compatible metrics
  • xLogs — LogQL log queries
  • xTraces — TraceQL distributed traces

Quick Validation​

Once your environment variables are set, verify each signal is reachable:

# Validate your API key by querying the portal
curl -s "$PORTAL_BASE/api/portal/org/me" \
-H "Authorization: Bearer $JWT_TOKEN" | jq .name

# Check metrics endpoint health
curl -s "$METRICS_BASE/ready"

# Check logs endpoint health
curl -s "$LOGS_BASE/ready"

# Check traces endpoint health
curl -s "$TRACES_BASE/ready"

Expected: each health check returns ready.


Key Takeaways​

Checkpoint
  • The portal lives at https://portal.xscalerlabs.com
  • Edge endpoints are region-scoped: <edge>.m/l/t.xscalerlabs.com
  • Set the five environment variables before starting any lab
  • JWT tokens expire in 30 minutes — re-authenticate when they do
  • Your Grafana is at https://<org-slug>.g.xscalerlabs.com

← Previous: Home
Next: Session 1 — Overview →