Tracing, one command away
Add IyziTrace to a project — whatever you build it in, wherever you run it. No account, no agent to run, nothing to configure first.
$curl -fsSL https://iyzitrace.com/cli/install.sh | shInstalls to ~/.local/bin. Set IYZITRACE_INSTALL_DIR to put it somewhere else.
Then check it with iyzitrace --version.
What it supports
Built on OpenTelemetry, so the telemetry goes to any collector you already run.
.NET
Traces · Metrics · Logs
Java & Spring
Traces · Metrics · Logs
Node.js & TypeScript
Traces
Python
Traces
Dart & Flutter
Traces
Swift, iOS & macOS
Traces
Android & Kotlin
Traces
| Ecosystem | init | auto | Signals |
|---|---|---|---|
| .NET | Supported | Supported | Traces · Metrics · Logs |
| Java & Spring | Supported | Supported | Traces · Metrics · Logs |
| Node.js & TypeScript | Supported | Supported | Traces |
| Python | Supported | Supported | Traces |
| Dart & Flutter | Supported | Not available | Traces |
| Swift, iOS & macOS | Supported | Not available | Traces |
| Android & Kotlin | Supported | Not available | Traces |
macOS
Apple Silicon and Intel
Linux
x64 and arm64, glibc and musl
Windows
x64 and arm64
How to use it
Run iyzitrace in your project and follow the menu, or pass flags and script the same thing.
initAdds the SDK to your source, so you choose what a span covers. Available in every ecosystem.
instrument autoAttaches to a process that is already running and needs no code change. It exists for the ecosystems whose runtime supports it.
iyzitraceOpens the interactive menu. Every command below also works with flags, so the same thing can be scripted.
iyzitrace initAdds IyziTrace to the project in the current directory. Detects the ecosystem, adds the dependency and points the package manager at iyzitrace.com.
iyzitrace doctorChecks that a project is configured correctly. Add --json for a machine-readable result in CI. .NET projects.
iyzitrace instrument autoInstruments an already running process without changing its code. Lists what it finds and restarts the one you pick with the agent attached.
iyzitrace pkg listShows the instrumentation packages that are cached and what is available to download.
iyzitrace uninstallReverses what init did. .NET and Java projects.
Which signals you get
Traces are available everywhere. Metrics and logs are available on .NET and Java today; the mobile and Dart SDKs currently emit traces.
Quickstart
Pick your stack. Everything below is what init sets up and what your code then does with it.
iyzitrace init # adds the package, the feed and the appsettings section
dotnet run// init wires this into Program.cs for you
builder.AddIyziTrace();
// then, anywhere in your code
IyziTrace.Trace("checkout", () =>
{
IyziTrace.Tags(new { cart_items = 3, total = 249.90 });
});Running in CI
Every command takes --yes to skip the prompts, and doctor takes --json so a pipeline can read the result. A project it cannot find is an error, not a silent pass.
iyzitrace init --yes \
--service-name shop-api \
--otlp-endpoint https://collect.example.com
iyzitrace doctor --jsonPrefer to see it inside Grafana?
The CLI gets the telemetry out of your application. The IyziTrace plugin puts it in front of you — traces, services and dependencies, in the Grafana you already have open.