How to create teams in firebase crashlytics after migration from fabric? - firebase

I have migrated from fabric to firebase by connecting apps via console but I am not getting crash report emails from firebase. I added different users from "Users and Permissions" as suggested here. But I am still not getting email notifications on crash. I tried creating custom role from google cloud console but I am not able to see that in my firebase console. Only case where I am getting mails is when I am adding new user as "Owner" which I think is not right because it would mean I should give full access to all team members. Has anyone faced such issue before?
P.S.: Crashes are logged in console but I am not getting email notifications on crash.

You can configure your email preferences from Alert Settings under the alert icon on the top left of the console. What does this window look like in your firebase console?
Next you need to have at least view permissions on the project to receive e-mail notification. Project owners and editors get email alerts by default. More information on this can be found here.

Related

View authenticated users in Firebase Emulator when using multi tenancy

A project that we are building uses the Google cloud identity toolkit multi-tenant feature. We have two tenants that we are actively using. We interact with all of this through Firebase's authentication suite.
I've noticed that when using this the user accounts do not show up in Firestore's UI anymore. The same goes for the local emulator.
I know the user has been created because when I log in I get back the correct uid matching the user profile created in firestore that I can see in the local emulator.
I'd like to know if anyone can help me with one of the following:
Is there a way to manage the users created for a multi-tenant setup through the emulator?
Is there a way for me to use gcloud cli locally to manage the users that I have created locally?
Good news! The updated version of the emulator will show you tenants. Once you run the emulator, attempt to login as a user through a tenant, and your "auth" page will magically get a "Tenant" dropdown.
Bad news! The non-default-tenant users don't seem to persist by any export method I have discovered so far.
As for seeing those users in the firebase console, it's pretty easy, but an extra step. Under "authentication" in the firebase console, you should see a tenant dropdown.
If you open that, there will be a link "Other tenants can be managed in the Google Cloud Console". Click it, then click "users" on the left. Finally choose your tenant in the "Tenant" dropdown.

Firebase Crashlytics role in Google Cloud Platform

Because of GDPR we are trying to limit access for the developers to production data, but the developers need access to Crashlytics. I have tried to add the roles specified in https://stackoverflow.com/a/50585767/328864:
Firebase Crash Symbol Uploader
Error Reporting User
Error Reporting Viewer
Error Writer
..but it doesn't work, the page only says The project XXXX either does not exist, or XXXX doesn't have permission to view it.. I have also tried to add a bunch of other roles, like Error Reporting Admin, Monitoring Admin etc, but it doesn't make any difference. The only role that seems to work is Project - Viewer, but that also gives read access to the entire database.
Is there a role or combination of roles that gives access to only Firebase Crashlytics?
Have you tried adding one of the Firebase Quality predefined roles?
I followed the post you referenced to grant access for my Viewer members and it didn't work. Only after adding Firebase Quality Admin role did the users get access. I didn't try the Firebase Quality Viewer role because I wanted those members to be able to link app from Fabric.
I realize this may not be what you want as this will provide access to the other Quality services, but just want to throw it out there as an option.

In Firebase Crashlytics, Where can I see user ID in the Reported Crashes?

Firebase Crashlytics has a feature for customizing crash reports. In my case, I'm reporting the internal user ID so that I can pull up more information to debug the issue.
I'm not able to see the user ID anywhere in the Firebase Crashlytics tab.
I call this in
Application.onCreate()
Crashlytics.setUserIdentifier(uid);
You can see it here:
Or try to search reports by user ID here:
If the search result is empty, it means your "test crash" hasn't synced yet.
You don't see the user ID in Firebase Crashlytics because you are not calling the correct method.
Here is how to do it:
FirebaseCrashlytics.getInstance().setUserId("12345");
In addition, you can give yourself more context for the events leading up to a crash by logging custom message:
FirebaseCrashlytics.getInstance().log("Higgs-Boson detected! Bailing out");
For more infos:
https://firebase.google.com/docs/crashlytics/customize-crash-reports?authuser=0&platform=android#set_user_ids
Add FirebaseCrashlytics.getInstance().setUserId(uuid);
in all screens (activities). If you add only in login screen then userid will not share to crashlytics, when app is crashed after reopening. Since we will ask user to login only once.

Firebase Project Invitation

I've a project using Firebase, and I need to add an owner to the project.
This is how I added him:
Opened the project in the Firebase console.
Clicked on the settings wheel next to the project name, and selected permissions.
Firebase launches a new page "IAM & Admin".
Pressed on Add, which shows a popup.
Entered the user gmail address, which auto completes so it could never be a wrong email.
Selected the role as OWNER.
Pressed on ADD button.
Now it shows me the user in the permissions list, with the message:
Invitation sent. Pending acceptance.
I've seen this answer, which says :
The newly added users may sometimes not be getting an email invite. So be certain to let them know that you added them.
I've let the user share his screen with me on Skype, and this is what happens:
The user do get an email invitation, when he presses on accept invitation, the firebase console page is opened with the project name in the url !
But it doesn't show the project which I've shared. it just loads the Firbease console showing different projects that he owns from before !
And I still see this message:
Invitation sent. Pending acceptance.
As #Frank has mentioned this is probably a bug that should be fixed in the firebase console.
I've managed to do a workaround by not using Firebase permissions, but by using Google Cloud service instead.
In Google Cloud Services console I do have access to the same projects in Firebase console, so I opened the project, from the menu selected IAM & ADMIN which looks exactly the same as the IAM & ADMIN in firebase console, I've added the collaborator as an owner exactly as I've mentioned in the details above, and what do you know ! an email invitation was sent, the user accepted the request successfully.
And when he opened his Firebase console again, the project is now available in his projects list.
firebaser here
This is a known issue in the workflow for adding Owners that was introduced recently. It should be fixed soon, but in the meantime you can work around it by first adding the user as an Editor (no invite/accept workflow required), and THEN adding the user as an Owner (accept invitation workflow should be properly displayed).
Tried the GCP approach with same result - nothing! BUT, after an hour the profect appeared in my member's Firebase and GCP dashboards.

See if User is Verified on Firebase Dashboard

I am able to send verification emails to users that sign up. And with the iOS SDK I am able to check if their email is verified or not.
However, is there anywhere on the Firebase backend / dashboard where I can see this value or change it? Similar to my other data.

Resources