To install or manage extensions, you must be assigned one of these roles:
Owner or Editor
or
Firebase Admin
.
List a project's installed extension instances
You can list every instance of the extensions you installed.
Run the extensions-list command:
firebase ext:list --project=
projectId-or-alias
Monitor an installed extension instance
In the Firebase console, you can monitor the activity of an installed
extension, including checks on its health, usage, and logs.
Set budget alerts
Setting budget alerts is a good practice in general, but alerts may be
especially important when you're trusting another party's code to run in your
project.
Make sure that you set up
budget alerts
for your Firebase project.
View functions created by extensions
Go to your
Functions dashboard
of the Firebase console.
In the
Dashboard
tab, you can view the functions from
Firebase Extensions (alongside any other functions that you've deployed
for your project).
Functions created by extensions have names, in the format:
ext-
extension-instance-id
-
functionName
For example:
ext-awesome-task-simplifier-onUserCreate
View Cloud Scheduler jobs created by extensions
Open your project's
Cloud Scheduler
page
in the Google Cloud console.
In the Jobs list, you can view the Cloud Scheduler jobs from
Firebase Extensions (alongside any other jobs you've created for your
project).
Jobs created by extensions have names in the format:
firebase-ext-
extension-instance-id
-
functionName
For example:
firebase-ext-awesome-task-simplifier-doTask
View and manage Cloud Tasks enqueued by extensions
Some extensions use
Cloud Tasks
to run longer-running tasks: most commonly, processing tasks that run at various
points in an extension's lifecycle—installation, reconfiguration, and
after upgrades.
Normally, these tasks run and complete automatically, without your intervention.
However, if you ever need to manually manage an extension's queued
tasks—for example, to pause the queue or remove from the queue a task that
hasn't started yet—follow these steps:
In the Firebase console
Extensions
section, open the extension instance's details page.
On the details page, open the
APIs and resources
section. If the
extension uses Cloud Tasks, there will be a
Cloud Task queues
section
with one or more entries.
Click
View queue
for the queue you want to manage. This will open the
Queue Details page in the Google Cloud console, from which you can view
queued tasks, pause the queue, remove tasks from the queue, and so on. See
Manage queues and tasks
in the Cloud Tasks documentation.
View Cloud Secret Manager secrets created by extensions
Open your project's
Secret Manager
page
in the Google Cloud console.
In the Secrets list, you can view the secrets created for
Firebase Extensions (alongside any other secrets you've created for your
project).
Secrets created by extensions have names in the format:
ext-
extension-instance-id
-
paramnName
For example:
ext-awesome-task-simplifier-API_KEY
Secrets are labeled with the key
firebase-extensions-managed
. Don't remove
this label unless you want to stop Firebase from managing the secret.
Check if an installed extension is healthy
You can review all the errors from functions (including those created by
Firebase Extensions) in the console.
In the
Health
tab of your
Functions dashboard
, you can
view an overview of errors and performance information for all functions in
your project.
To view information for a specific extension, use the filter at the top of
the page to select a specific function.
Check how often an installed extension is running
In the
Dashboard
tab of your
Functions dashboard
,
locate the specific function for the Firebase Extension that
you want to check.
Click
more_vert
(the overflow menu) on
the far right-side of the entry, then select
Detailed usage stats
.
In the displayed Google Cloud console, you can drill down into various
invocations of a function and even inspect its source code.
View the logs for an extension
If you're trying to debug your project, or submit a bug report to Firebase, it's
useful to view logs of the functions running in your project.
In the
Logs
tab of your
Functions dashboard
, use the filter at the
top of the page to select the functions created by your extension.
Update an installed extension instance to the latest version
You can update an installed instance of an extension to its latest released
version. You might want to update an installed instance because the instance is
already actively running or set up in your testing, project, or app workflow.
When you update an instance, all the instance's extension-specific resources and
logic is overwritten to use the new version's source code and files. The
extension's instance ID and service account will not change.
During the update process, you'll be notified of any changes for the new
version, and you'll be able to specify values for any new parameters.
To update an extension instance in your
extensions manifest
to the latest version,
run the extension update command:
firebase ext:update
extensionInstanceId
To update to a specific version, provide the version you want to update to:
firebase ext:update
extensionInstanceId
versionNumber
Then, to deploy the extensions in your manifest onto a Firebase
project, run:
firebase deploy --only extensions --project=
projectId-or-alias
You can change the values of the user-configured parameters for an installed
extension instance. These new values will be used in any
future
triggers of the
instance, but all previous artifacts or structural elements created by the
extension (like stored images or existing storage buckets) will not be changed.
To interactively reconfigure an extension in your
extensions manifest
,
run the extension configure command:
firebase ext:configure
extensionInstanceId
Then, to deploy the extensions in your manifest onto a Firebase
project, run:
firebase deploy --only extensions --project=
projectId-or-alias
Uninstall an extension instance
You can uninstall an instance of an extension from your Firebase project. This action deletes
the
service account
and all the
resources
(like a set of functions) that Firebase created specifically for that instance
of the extension. However, the following are
not
deleted:
Any artifacts created by the extension (like stored images).
Any other resources in your project, like a database instance or Cloud Storage
bucket. Even if the extension interacted with these other resources, they
are not
extension-specific
, so they aren't deleted if the extension is
uninstalled.
Here's how to uninstall an extension:
To remove an extension instance from your
extensions manifest
,
run the extension uninstall command:
firebase ext:uninstall
extensionInstanceId
Then, to deploy the changes to your manifest onto a Firebase
project, run:
firebase deploy --only extensions --project=
projectId-or-alias