Skip to content

Getting Started

Terminal window
bun add @capgo/capacitor-firebase-performance
bunx cap sync
import { FirebasePerformance } from '@capgo/capacitor-firebase-performance';

Starts a trace.

import { FirebasePerformance } from '@capgo/capacitor-firebase-performance';
await FirebasePerformance.startTrace({} as StartTraceOptions);

Stops a trace.

import { FirebasePerformance } from '@capgo/capacitor-firebase-performance';
await FirebasePerformance.stopTrace({} as StopTraceOptions);

Atomically increments the metric with the given name for the selected trace by the incrementBy value.

import { FirebasePerformance } from '@capgo/capacitor-firebase-performance';
await FirebasePerformance.incrementMetric({} as IncrementMetricOptions);

Enables or disables performance monitoring. Will be applied with the next start of the app.

import { FirebasePerformance } from '@capgo/capacitor-firebase-performance';
await FirebasePerformance.setEnabled({} as SetEnabledOptions);

Determines whether performance monitoring is enabled or disabled.

import { FirebasePerformance } from '@capgo/capacitor-firebase-performance';
await FirebasePerformance.isEnabled();

Sets a custom attribute of a trace to a given value.

import { FirebasePerformance } from '@capgo/capacitor-firebase-performance';
await FirebasePerformance.putAttribute({} as PutAttributeOptions);

Returns the value of a custom attribute of a trace.

import { FirebasePerformance } from '@capgo/capacitor-firebase-performance';
await FirebasePerformance.getAttribute({} as GetAttributeOptions);

Gets the all the custom attributes of a trace with their values.

import { FirebasePerformance } from '@capgo/capacitor-firebase-performance';
await FirebasePerformance.getAttributes({} as GetAttributesOptions);

Removes a custom attribute from a trace given its name.

import { FirebasePerformance } from '@capgo/capacitor-firebase-performance';
await FirebasePerformance.removeAttribute({} as RemoveAttributeOptions);

Sets the value of a custom metric.

import { FirebasePerformance } from '@capgo/capacitor-firebase-performance';
await FirebasePerformance.putMetric({} as PutMetricOptions);

Get the value of a custom metric by name.

import { FirebasePerformance } from '@capgo/capacitor-firebase-performance';
await FirebasePerformance.getMetric({} as GetMetricOptions);

Records a trace given its name and options.

Only available on web.

import { FirebasePerformance } from '@capgo/capacitor-firebase-performance';
await FirebasePerformance.record({} as RecordOptions);
export interface StartTraceOptions {
/**
* Custom trace name.
*
* Names for custom code traces must meet the following requirements:
* no leading or trailing whitespace, no leading underscore (_) character,
* and max length is 100 characters.
*
* @since 0.1.0
*/
traceName: string;
}
export interface StopTraceOptions {
/**
* Name of the trace that was set with `startTrace`.
*
* @since 0.1.0
*/
traceName: string;
}
export interface IncrementMetricOptions {
/**
* Name of the trace that was set with `startTrace`.
*
* @since 0.1.0
*/
traceName: string;
/**
* Name of the metric to be incremented.
*
* @since 0.1.0
*/
metricName: string;
/**
* Amount by which the metric has to be incremented.
*
* @default 1
* @since 0.1.0
*/
incrementBy?: number;
}
export interface SetEnabledOptions {
/**
* Should performance monitoring be enabled.
*
* @since 0.1.0
*/
enabled: boolean;
}
export interface IsEnabledResult {
/**
* `true` if performance monitoring is enabled, otherwise `false`.
*
* @since 0.1.0
*/
enabled: boolean;
}
export interface PutAttributeOptions {
/**
* Name of the trace to set its attribute.
*
* @since 6.3.0
*/
traceName: string;
/**
* Name of the attribute to set its value.
*
* @since 6.3.0
* @example "experiment"
*/
attribute: string;
/**
* The value to set to the attribute.
*
* @since 6.3.0
* @example "A"
*/
value: string;
}
export interface GetAttributeOptions {
/**
* Name of the trace to set its attribute.
*
* @since 6.3.0
*/
traceName: string;
/**
* Name of the attribute to retrieve its value.
*
* @since 6.3.0
*/
attribute: string;
}
export interface GetAttributeResult {
/**
* The value of the custom attribute.
*
* @since 6.3.0
*/
value: string | null;
}
export interface GetAttributesOptions {
/**
* Name of the trace to get its attributes.
*
* @since 6.3.0
*/
traceName: string;
}
export interface GetAttributesResult {
/**
* A map of all custom attributes of a trace with their values.
*
* @since 6.3.0
*/
attributes: { [key: string]: string };
}
export type RemoveAttributeOptions = GetAttributeOptions;
export interface PutMetricOptions {
/**
* Name of the trace to set its metric.
*
* @since 6.3.0
*/
traceName: string;
/**
* The metric name.
*
* @since 6.3.0
*/
metricName: string;
/**
* The value to set for the metric.
* The given value is floored down to the nearest integer.
*
* @since 6.3.0
*/
num: number;
}

This page is generated from the plugin’s src/definitions.ts. Re-run the sync when the public API changes upstream.

If you are using Getting Started to plan dashboard and API operations, connect it with API Overview for the implementation detail in API Overview, Introduction for the implementation detail in Introduction, API Keys for the implementation detail in API Keys, Devices for the implementation detail in Devices, and Bundles for the implementation detail in Bundles.