---
editLink: false
lastUpdated: false
---

[@salesforce/b2c-tooling-sdk](../../../modules.md) / [operations/logs](../index.md) / createPathNormalizer

# Function: createPathNormalizer()

> **createPathNormalizer**(`options`): (`message`) => `string` \| `undefined`

Defined in: [packages/b2c-tooling-sdk/src/operations/logs/path-normalizer.ts:121](https://github.com/SalesforceCommerceCloud/b2c-developer-tooling/blob/e7c16f1ae423da0aa47b3e10be88f9770b53619b/packages/b2c-tooling-sdk/src/operations/logs/path-normalizer.ts#L121)

Creates a path normalizer function for converting remote cartridge paths
to local paths in log messages.

Supports two modes:
1. **Cartridge mappings** (precise): Uses discovered cartridges to map each
   cartridge name to its actual local path. Best for projects with cartridges
   in different locations.
2. **Cartridge path** (simple): Prefixes all paths with a base directory.
   Best when all cartridges are in a single directory.

## Parameters

### options

[`PathNormalizerOptions`](../interfaces/PathNormalizerOptions.md)

Normalizer options

## Returns

(`message`) => `string` \| `undefined`

Function that normalizes paths in a message string, or undefined if no options provided

## Example

```typescript
// Using discovered cartridges (recommended)
const cartridges = findCartridges('./my-project');
const normalize = createPathNormalizer({ cartridges });

// Using simple cartridge path
const normalize = createPathNormalizer({ cartridgePath: './cartridges' });

// Input: "(app_storefront/cartridge/controllers/Home.js:45)"
// Output: "(./cartridges/app_storefront/cartridge/controllers/Home.js:45)"
const normalized = normalize(logMessage);
```
