Added in plugin version 7.3.0
With Firebase Performance Monitoring you get insights into how your app performs from your users' point of view, with automatic and customized performance tracing.
To add this feature to your project, either:
- Remove
firebase.nativescript.json
from the root of the project and runnpm i
, or - Edit that file and add
"performance_monitoring": true
.
In both cases, remove the /platforms
folder afterwards so the required native library will be added upon the next build.
⚠️ It may take up to 12 hours before results pop up in your Firebase console, so be patient.
ℹ️ Per Firebase's documentation, by enabling this feature, Remote Config will be enabled as well. So you may be interested in what Remote Config can do for your app.
To be able to interact with a started trace, you can remember it in a property (in this case firebaseTrace
):
import { performance as firebasePerformance } from "nativescript-plugin-firebase";
import { FirebaseTrace } from "nativescript-plugin-firebase/performance/performance";
const firebaseTrace: FirebaseTrace = firebasePerformance.startTrace("myTrace");
Now you can call several functions on the remembered trace object, read on below. And don't forget to use trace.stop
afterwards.
if (firebaseTrace) {
firebaseTrace.setValue("foo", "bar");
}
if (firebaseTrace) {
firebaseTrace.getValue("foo");
}
if (firebaseTrace) {
const attributes = firebaseTrace.getAttributes();
console.log(`trace attributes: ${attributes}`);
}
if (firebaseTrace) {
const attributes = firebaseTrace.removeAttribute("foo");
}
if (firebaseTrace) {
const incrementBy = 1;
const attributes = firebaseTrace.incrementMetric("foo_metric", incrementBy);
}
To stop the trace, call stop
on the remembered trace object:
if (firebaseTrace) {
firebaseTrace.stop();
firebaseTrace = undefined;
}
To be able to interact with a started HTTP metric, you can remember it in a property (in this case firebaseHttpMetric
):
import { performance as firebasePerformance } from "nativescript-plugin-firebase";
import { FirebaseHttpMetric } from "nativescript-plugin-firebase/performance/performance";
const firebaseHttpMetric: FirebaseHttpMetric = firebasePerformance.startHttpMetric("https://postman-echo.com/get", "GET");
Now you can call several functions on the remembered metric object, read on below. And don't forget to use metric.stop
afterwards.
if (firebaseHttpMetric) {
firebaseHttpMetric.setRequestPayloadSize(42);
}
if (firebaseHttpMetric) {
firebaseHttpMetric.setHttpResponseCode(200);
}
To stop the metric, call stop
on the remembered metric object:
if (firebaseHttpMetric) {
firebaseHttpMetric.stop();
firebaseHttpMetric = undefined;
}