Filtering Data
zymtrace supports global filters across nearly all pages. Use filters to slice and dice your data efficiently.
zymtrace is fully OpenTelemetry (OTEL) compliant. As a result, we support OTEL resource attribute format - https://opentelemetry.io/docs/specs/semconv/
Two Filtering Modes​
1. Click and Apply Filters​
Click on any filter category (Pod Name, Deployment Name, Thread Name, Container Name, etc.) to see available options. Each entity shows its compute time consumption as a percentage relative to workloads you are profiling across your entire infrastructure. This enables you to quickly identify the expensive resources, helping you prioritize optimization efforts that deliver quick wins.
Simply click an entity to apply it as a filter, or enter a custom value to filter by name pattern.
2. Query Mode​
Enter a full query for advanced filtering. zymtrace supports CEL (Common Expression Language) syntax, and all entities use OTEL resource attributes in the query.
OTEL Resource Attributes​
OTEL Attribute | Description |
---|---|
k8s.pod.name | K8s pod name |
thread.name | Thread name |
container.name | Container name |
k8s.namespace.name | K8s namespace |
host.name | Host machine name |
process.executable.name | Main executable being profiled |
profile.frame.type | Stack frame type (e.g. cudafn, java, .net, kernel, ruby, python, etc.) |
Other custom zymtrace attributes are:
user.tag
- Custom tags that are defined in the profiler configuration.script.name
- Interpreter language script name, e.g.user/foo.py
Example queries:
k8s.namespace.name == "production"
host.name == "node-1" || host.name == "node-2"
process.executable.name == "python3" && profile.frame.type == "python"
container.name == "backend" && k8s.namespace.name != "staging"
Script Name Filtering​
You can also filter by script name in zymtrace. Python and other script language applications share the same main executable name, making them difficult to differentiate and filter. Multiple Python workloads would all simply show up as python. To solve this, we directly collect the Python script name, enabling you to drill down to the specific application.
This feature is currently limited to Python and we plan to extend support to Java and other high-level languages. Contact us if you need this in other languages.
Filter Scope​
Filters apply globally across, including:
- Efficiency IQ
- Top Functions
- Top Entities
- CPU Profiles
- GPU Profiles
Once applied, filters persist as you navigate between different views, allowing you to maintain focus on specific entities throughout your analysis.