---
title: MXSignpostMetric
framework: metrickit
role: symbol
role_heading: Class
path: metrickit/mxsignpostmetric
---

# MXSignpostMetric

An object representing a custom metric.

## Declaration

```swift
class MXSignpostMetric
```

## Overview

Overview A custom metric is an event type with a developer-defined name and category. You can add custom metrics to daily reports to capture information specific to your app. Custom metrics are a type of signpost saved to custom OS logs created using makeLogHandle(category:). The daily report contains information about the number and duration of custom events, as well as the power and performance impact of those events. Only custom metric events logged using MetricKit utility functions capture additional power and performance data. note: The system limits the number of custom signpost metrics saved to the log in order to reduce on-device memory overhead. Limit use of custom metrics to critical sections of code.

## Topics

### Logging custom metrics

- [mxSignpost(_:dso:log:name:signpostID:_:_:)](metrickit/mxsignpost(_:dso:log:name:signpostid:_:_:).md)
- [mxSignpostAnimationIntervalBegin(dso:log:name:signpostID:_:_:)](metrickit/mxsignpostanimationintervalbegin(dso:log:name:signpostid:_:_:).md)

### Reading custom metric data

- [signpostIntervalData](metrickit/mxsignpostmetric/signpostintervaldata.md)
- [MXSignpostIntervalData](metrickit/mxsignpostintervaldata.md)

### Reading data about the custom metric

- [signpostName](metrickit/mxsignpostmetric/signpostname.md)
- [signpostCategory](metrickit/mxsignpostmetric/signpostcategory.md)
- [totalCount](metrickit/mxsignpostmetric/totalcount.md)

## Relationships

### Inherits From

- [MXMetric](metrickit/mxmetric.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCoding](foundation/nscoding.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [NSSecureCoding](foundation/nssecurecoding.md)

## See Also

### Related Documentation

- [Logging](os/logging.md)

### Signpost metrics

- [MXSignpostIntervalData](metrickit/mxsignpostintervaldata.md)
- [mxSignpost(_:dso:log:name:signpostID:_:_:)](metrickit/mxsignpost(_:dso:log:name:signpostid:_:_:).md)
- [mxSignpostAnimationIntervalBegin(dso:log:name:signpostID:_:_:)](metrickit/mxsignpostanimationintervalbegin(dso:log:name:signpostid:_:_:).md)
