Quick start guide for developers
Use this guide to get started with the key Instana tasks for developers, including finding your service, analyzing slow requests, using AutoProfile for code-level profiling, investigating errors, and correlating logs with traces.
Prerequisites
Before you start, confirm the following prerequisites:
- Your IT admin installed Instana agents on the hosts and clusters where your applications run.
- You have a user account in Instana with at least User role permissions.
- You have your Instana tenant URL. It looks like
https://your-company.instana.io.
Log in and explore the UI
In a browser, open your Instana tenant URL and log in with your credentials. The Home page opens and shows a summary of your system status.
The following areas are most relevant to your work as a developer:
- Applications > Services: All discovered services with their performance metrics.
- Applications > Subtraces: Individual requests that you can trace through your system.
- Analytics > Logs: Log messages from your applications.
- Analytics > Profiles: Instana AutoProfile for code-level performance profiling.
- Events > Changes: Deployment tracking to see the impact of your releases.
Find your service
Instana automatically discovers all services in your environment. You can find your service on the Applications > Services page and by using the search box to find your service by name. When you click your service, the service dashboard opens.
The service dashboard shows:
- Request rate: How many requests per second your service handles.
- Error rate: What percentage of requests are failing.
- Latency: How long requests take (average, P50, P95, P99).
- Flow: Which services your service calls and which services call your service.
- Endpoints: Individual API endpoints or operations within your service.
For more information, see Application monitoring.
Analyze slow requests
Performance issues often manifest as slow user experiences. Instana helps you quickly identify which specific requests are slow and pinpoint the exact bottleneck in your code or infrastructure.
To analyze slow requests:
- Go to Analytics > Applications > Calls.
- Filter by your service name and set the time range to when the slowness occurred.
- Sort by Latency to find the slowest requests.
- Click a slow request to see the complete trace with timing for each span.
- Identify which service or database call is causing the delay.
For more information, see Analyzing traces and calls.
Use AutoProfile to find code-level bottlenecks
When you need to optimize performance at the code level, Instana AutoProfile provides continuous profiling without requiring code changes or impacting performance. It helps you identify which specific methods in your code are using the most resources.
To use AutoProfile:
- Go to Analytics > Profiles.
- Filter by your service name and select the time range to analyze.
- Review the flame graph to identify methods that use the most CPU time.
- Click hot spots in the flame graph to see the exact code location.
For more information, see Analyzing profiles.
Track your deployments
Instana can track your deployments as change events so you can correlate code changes with performance changes. You can add a deployment event to your CI/CD pipeline by using the Instana API.
After your next deployment, you can verify that the deployment event appears in Events > Changes. The deployment marker appears on the metric graphs in your service dashboard so you can see the impact of your deployment.
For more information, see Pipeline feedback.
Investigate errors in your code
Errors in production can be difficult to reproduce and debug. Instana automatically captures every error with full context, including stack traces and the exact request parameters that triggered the failure, making it easier to fix issues quickly.
To investigate errors:
- Go to Analytics > Applications > Calls.
- Add a filter:
erroneous = true. - Filter by your service name and the time range when errors occurred.
- Click an erroneous call to see the complete trace.
- Review the error message and stack trace in the trace details.
For more information, see Analyzing traces and calls.
Correlate logs with traces
Logs and traces together provide complete visibility into application behavior. Instana automatically links log messages to their corresponding traces to help you to seamlessly navigate between logs and distributed traces to understand the full context of any request.
To view logs for a specific request:
- Go to Analytics > Applications > Calls.
- Find and click the request that you want to investigate.
- Click the Logs tab to see all log messages generated during this request.
To search logs and find related traces:
- Go to Analytics > Logs.
- Search for specific log messages or filter by service.
- Click a log message, then click the trace ID to see the complete request flow.
For more information, see Analyzing logs.
Monitor the impact of your changes
After you deploy a change, monitor your service to verify that the change improves performance and does not introduce errors. Go to Applications > Services, click your service, and set the time range to include the period before and after your deployment.
Look for changes in the following metrics:
- Erroneous call rate: An increase indicates that your change introduced errors.
- Latency: An increase indicates a performance regression. A decrease indicates a performance improvement.
- Calls per second: A drop might indicate that your service is not handling requests correctly.
You can view the deployment marker on the timeline by going to Events > Changes. If you see a problem, use trace analysis to identify the specific requests that are affected.
For more information, see Application perspectives.
Create synthetic tests for your APIs
Proactive monitoring helps you detect issues before users do. Synthetic tests continuously verify that your APIs and websites are available and performing correctly from multiple geographic locations, alerting you immediately if problems occur.
To create a synthetic test:
- Go to Synthetic monitoring.
- Click Create synthetic test.
- Select HTTP as the test type.
- Enter your API endpoint URL (for example,
https://api.example.com/health). - Set the test frequency (for example, every 5 minutes).
- Select multiple test locations (for example, US East, EU West).
- Configure validations (for example, status code 200, response time under 2 seconds).
- Click Save to start monitoring.
For more information, see Synthetic monitoring.
Understand service dependencies
If you know the services that your service depends on, it helps you to identify the impact of failures in downstream services.
Go to Applications > Services, click your service, and then click the Upstream / downstream button.
The expandable section shows:
- Upstream services: Services that call your service (directly called by).
- Downstream services: Services that your service calls (databases, APIs, message queues).
You can view the call count and erroneous call count for each upstream or downstream service. Use this information to understand how failures in downstream services affect your service.
For more information, see Application monitoring.
Next steps
After you complete the initial setup, consider the following next steps:
- Add custom instrumentation: Use the Instana SDK to add custom spans for business logic that is not automatically traced.
- Track custom metrics: Send custom metrics to Instana to monitor business-specific data (for example, order count, payment success rate).
- Set up alerts for your service: Create alerts that notify you when your service encounters errors or performance degradation.
- Review AutoProfile regularly: Use AutoProfile to identify and optimize performance hot spots in your code.
Quick reference for developer tasks
| Task | Where to find it |
|---|---|
| View your service metrics | Applications > Services |
| Analyze slow requests | Analytics > Applications / Calls |
| Find code-level bottlenecks | Analytics > Profiles |
| Investigate errors | Analytics > Applications / Calls (filter by erroneous = true) |
| View logs | Analytics > Logs |
| Track deployments | Events > Changes |
| View service dependencies | Applications > Services > Upstream / downstream |
| Create synthetic tests | Synthetic monitoring |