FirebasePerformance
@Singleton
class FirebasePerformance
The Firebase Performance Monitoring API.
It is automatically initialized by FirebaseApp.
This SDK uses FirebaseInstallations to identify the app instance and periodically sends data to the Firebase backend. To stop sending performance events, call FirebasePerformance.setPerformanceCollectionEnabled(false).
Summary
Nested types |
|---|
@Retention(value = RetentionPolicy.SOURCE)Valid HttpMethods for manual network APIs |
Constants |
|
|---|---|
const Int |
Maximum allowed length of the Key of the |
const Int |
Maximum allowed length of the Value of the |
const Int |
Maximum allowed number of attributes allowed in a trace. |
const Int |
MAX_TRACE_NAME_LENGTH = 100Maximum allowed length of the name of the |
const Int |
MAX_TRACE_NAME_LENGTH = 100Maximum allowed length of the name of the |
Public functions |
|
|---|---|
java-static FirebasePerformance |
Returns a singleton of FirebasePerformance. |
Boolean |
Determines whether performance monitoring is enabled or disabled. |
HttpMetric |
newHttpMetric(Creates a HttpMetric object for collecting network performance data for one request/response |
HttpMetric |
newHttpMetric(url: URL, @FirebasePerformance.HttpMethod httpMethod: String)Creates a HttpMetric object for collecting network performance data for one request/response |
Trace |
Creates a Trace object with given name. |
Unit |
setPerformanceCollectionEnabled(enable: Boolean)Enables or disables performance monitoring. |
java-static Trace |
startTrace(traceName: String)Creates a Trace object with given name and start the trace. |
Constants
MAX_ATTRIBUTE_KEY_LENGTH
const val MAX_ATTRIBUTE_KEY_LENGTH = 40: Int
Maximum allowed length of the Key of the Trace attribute
MAX_ATTRIBUTE_VALUE_LENGTH
const val MAX_ATTRIBUTE_VALUE_LENGTH = 100: Int
Maximum allowed length of the Value of the Trace attribute
MAX_TRACE_CUSTOM_ATTRIBUTES
const val MAX_TRACE_CUSTOM_ATTRIBUTES = 5: Int
Maximum allowed number of attributes allowed in a trace.
MAX_TRACE_NAME_LENGTH
const val MAX_TRACE_NAME_LENGTH = 100: Int
Maximum allowed length of the name of the Trace
MAX_TRACE_NAME_LENGTH
const val MAX_TRACE_NAME_LENGTH = 100: Int
Maximum allowed length of the name of the Trace
Public functions
getInstance
java-static fun getInstance(): FirebasePerformance
Returns a singleton of FirebasePerformance.
| Returns | |
|---|---|
FirebasePerformance |
the singleton FirebasePerformance object. |
isPerformanceCollectionEnabled
fun isPerformanceCollectionEnabled(): Boolean
Determines whether performance monitoring is enabled or disabled. This respects the Firebase Performance specific values first, and if these aren't set, uses the Firebase wide data collection switch.
| Returns | |
|---|---|
Boolean |
true if performance monitoring is enabled and false if performance monitoring is disabled. This is for dynamic enable/disable state. This does not reflect whether instrumentation is enabled/disabled in Gradle properties. |
newHttpMetric
fun newHttpMetric(
url: String,
@FirebasePerformance.HttpMethod httpMethod: String
): HttpMetric
Creates a HttpMetric object for collecting network performance data for one request/response
| Parameters | |
|---|---|
url: String |
a valid url String, cannot be empty |
@FirebasePerformance.HttpMethod httpMethod: String |
One of the values GET, PUT, POST, DELETE, HEAD, PATCH, OPTIONS, TRACE, or CONNECT |
| Returns | |
|---|---|
HttpMetric |
the new HttpMetric object. |
newHttpMetric
fun newHttpMetric(url: URL, @FirebasePerformance.HttpMethod httpMethod: String): HttpMetric
Creates a HttpMetric object for collecting network performance data for one request/response
| Parameters | |
|---|---|
url: URL |
a valid URL object |
@FirebasePerformance.HttpMethod httpMethod: String |
One of the values GET, PUT, POST, DELETE, HEAD, PATCH, OPTIONS, TRACE, or CONNECT |
| Returns | |
|---|---|
HttpMetric |
the new HttpMetric object. |
newTrace
fun newTrace(traceName: String): Trace
Creates a Trace object with given name.
| Parameters | |
|---|---|
traceName: String |
name of the trace, requires no leading or trailing whitespace, no leading underscore '_' character, max length is |
| Returns | |
|---|---|
Trace |
the new Trace object. |
setPerformanceCollectionEnabled
fun setPerformanceCollectionEnabled(enable: Boolean): Unit
Enables or disables performance monitoring. This setting is persisted and applied on future invocations of your application. By default, performance monitoring is enabled. If you need to change the default (for example, because you want to prompt the user before collecting performance stats), add:
<meta-data android:name=firebase_performance_collection_enabled android:value=false />
If you want to permanently disable sending performance metrics, add
<meta-data android:name="firebase_performance_collection_deactivated" android:value="true" />
This is separate from enabling/disabling instrumentation in Gradle properties.
| Parameters | |
|---|---|
enable: Boolean |
Should performance monitoring be enabled |
startTrace
java-static fun startTrace(traceName: String): Trace
Creates a Trace object with given name and start the trace.
| Parameters | |
|---|---|
traceName: String |
name of the trace. Requires no leading or trailing whitespace, no leading underscore [_] character, max length of |
| Returns | |
|---|---|
Trace |
the new Trace object. |