Follow these steps to create a profile and collect Java service profiling data.
Access the Service Profiler Page
- In the Pulse UI, go to Service Profiler from the left navigation bar.
- On the Service Profiler page, click Create Profile.
Enter Basic Information
Provide the general details for the profiling job.
- Name: Enter a name for the profile.
- Description: Provide a brief description of the profiling task.
Configure the Target
Select the service, component, and host where profiling will run.
- Service: Select the service to be profiled.
- Component: Choose the specific component within the service.
- Host: Select the host on which to collect profiling data.
You can create profiling for one service, one component, and one host at a time. To profile additional services, components, or hosts, create separate profiles.
Configure Profiling Parameters
Specify how Pulse should collect profiling data.
- Event Mode: Select the event type to profile. (Currently, only the CPU is supported.)
- Interval (ms): Define the sampling frequency in milliseconds. The default value is 10 ms.
- Timeout (seconds): Specify the profiling duration in seconds. The maximum value you can set is 7200 seconds (2 hrs).
Configure Output
- Format: Select the output format for profiling data.
- Currently supported: JFR (Java Flight Recorder)
Advanced Configuration (Optional)
You can fine-tune profiling by including or excluding specific Java classes and adjusting stack trace depth.
- Include Pattern: Specify Java packages or classes to include.
- Exclude Pattern: Specify Java packages or classes to exclude.
- JStack Depth: Define the depth of stack traces captured by JStack.
These options help narrow profiling to relevant parts of your application and minimize noise in the collected data.
Example Configuration
| Parameter | Description | Example |
|---|---|---|
| Parameter | Description | Example |
| Name | Profile name | nifi_cpu_profile |
| Service | Target service | NiFi |
| Component | Target component | NiFi Node |
| Host | Host name | nifi-node1.acceldata.com |
| Event Mode | Profiling type | CPU |
| Interval (ms) | Sampling frequency | 10 |
| Timeout (seconds) | Profiling duration | 300 |
| Format | Output type | JFR |
| Include Pattern | Target package | org/apache/nifi/** |
| Exclude Pattern | Ignored package | org/apache/nifi/logs/**Parameter |
Next Steps
After the profile is created and executed:
- View the JFR file path from the Pulse UI. You can check the actual file on the node where the profile request was created.
- Analyze the data to identify CPU bottlenecks.
Was this page helpful?