> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.itential.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.itential.com/_mcp/server.

# Service configuration

> How to configure service-level settings in Admin Essentials, including CPU profiling and maximum memory size for applications and adapters.

When Itential Platform starts a service (application or adapter), the service loads its configuration data for start-up. Service configuration is managed from the **Service Config** editor in Admin Essentials.

This guide covers two service configuration topics: profiling logs and maximum memory size.

## Profiling

To help troubleshoot performance issues resulting in high CPU usage, Itential Platform has a built-in profiler based on [V8 profiling](https://v8.dev/docs/profile) and [Node.js simple profiling](https://nodejs.org/en/docs/guides/simple-profiling/).

Profiling can be enabled for Itential Platform and select applications and adapters in release version 2020.1 and higher.

Itential strongly recommends that profiling is not enabled for production deployments due to possible performance impacts.

### Prerequisites

You must have write permission to the working directory to create profiling logs.

### Set profiling in Itential Platform

When running Itential Platform in a Docker environment, set the following in `/docker/startContainer`:

```bash
PHCORE_PROFILING=true
```

When running Itential Platform directly in shell, use the `--prof` [CLI option](https://nodejs.org/docs/latest-v10.x/api/cli.html#cli_prof):

```bash
sudo -u pronghorn node --prof server.js
```

### Enable profiling for apps and adapters

To enable profiling for adapters and applications running on a development server:

#### Open Admin Essentials

Go to **Admin Essentials**.

#### Select the service

Expand the **Applications** or **Adapters** menu in the left sidebar and select the appropriate adapter or application.

#### Enable Advanced View

From the **Configuration** tab, switch the toggle in the upper-right corner to turn on **Advanced View** and display the **Service Config** editor.

#### Edit the profiling configuration

Enable or disable profiling by directly editing the service configuration.

![](/_fern-img/77ad70df57d2511ab3a55404f4800ef0917042af2175c1ce44bc224e41eb3675.webp)

#### Save and restart

Click **Save**, then restart the application or adapter for the change to take effect.

### Process profiler logs

The profiler writes data to a file named `isolate-*-v8.log` in the working directory.

![](/_fern-img/4d98d3cd6f7124cfc0f22be3b5c56e7fe56a10477249d75a05673df6f672de63.webp)

To convert the log into a readable format, use the Node.js `--prof-process` [CLI option](https://nodejs.org/api/cli.html#cli_prof_process):

```bash
node --prof-process isolate-0x5589eb9afae0-v8.log > isolate-0x5589eb9afae0-v8-PRETTY.log
```

Open the output file in your preferred editor or viewer to inspect the profiling data.

### Remove profiler logs

After analyzing the profile data, remove the log files to reclaim disk space.

## System properties

System properties control service-level internal settings such as V8 and Node.js properties for a service process. Add them to the **Service Config** page (under **Applications** or **Adapters**) as a top-level `systemProps` property.

### Max memory size

As memory consumption approaches the limit for a service process, use `maxOldSpaceSize` to increase the memory limit. Navigate to **Admin Essentials → Applications → Configuration → Service Config** to add this property.

| Property          | Type    | Default | Description                                                                                                                                                     |
| ----------------- | ------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `maxOldSpaceSize` | Integer | 2048    | Sets the maximum memory size (in MB) of a service's V8 old memory section. The default is 2 GB for all services except Workflow Engine, which defaults to 8 GB. |

**Sample configuration**

```json
"systemProps": {
  "maxOldSpaceSize": 4095
}
```