Firebase Firestore everyday API call graph? - firebase

I am not able to find the screen to view everyday detailed graph for API call count for Firebase Firestore. I want to view see graph for read/write count.
I am able to see today's quotas on this page.
I want see Cloud Firestore Read Operations & Cloud Firestore API Calls for everyday.
Please provide a link for required page?

You will be able to see the number of reads/writes/deletes in the Firebase Console:
https://console.firebase.google.com/u/0/project/your-project-name/database/firestore/usage
For other usage statistics, you should use Stackdriver. You will also see the same read/write/delete statistics in Stackdriver, but much detailed. Have a look at this answer: Where can I find Stackdriver in Firebase console?

Related

Discrepency in Number of writes in Firebase console and Google cloud console Quota pages

Last couple of weeks, I have been Observing difference between number of writes in Firebase console Firestore Usage tab and Google cloud console Quota page.
Before that, The count fairly used to sync.
Number of writes in Firebase Firestore console usage tab: 9.2K
Number of writes in Google Cloud Console page, Quotas Page: 19307
Which is approximately double the number of writes in Firebase Firestore Usage Tab. Are there any Internal writes happening which google doesn't report?
Firebase Console Firestore Usage Tab Page
Google cloud Console Quotas page
I have attached the screenshots for the same.
Can anyone clear My Query. Is this a valid Scenario?
Note: I Don't have any other project linked to the platform.
From your first screenshot you can see at the top left written on the graph “Does not include Imports/exports and may not match billing and quota usage”. Moreover, Google public documentation states that the Firebase console includes a usage dashboard that shows Cloud Firestore reads, writes, deletes and other metrics over time.
As a result of how the dashboard computes usage, the numbers reported can differ from billing reports. The billing reports are the final usage numbers.
The usage dashboard does not include reads and writes from managed import and export operations.
So,I have to answer my question.
I've found out the root cause. Firestore FieldValue atomic operations causing the double writes.
This double writes happening with any SDK version even in Cloud functions Admin SDK.
I've skipped the use of atomic operations using FieldValue. All Fine now.
Firebase Support Investigating the Issue. Will update When I Got more Info from them.
Edit:2
Response from Firebase support:
"The two writes come from: 1) the initial write and 2) the transformation. This is not a bug, and what is shown in the Cloud console is correct. We do have an internal ticket now to make sure the Firebase console syncs up this information better, as well, so hopefully that'll help."
That means Fieldvalue functions to increment and array Union, servertimestamp will cause two writes and I also found that they are causing extra reads as well. I feel Firebase should reconsider their decision of not considering it as bug or atleast restructure this Atomic Operation. Let's Wait and See.

How do I send data from Pub/Sub to Google Cloud Firestore?

I'm setting up a dataflow in Google Cloud Platform. I have retrieved data from IoT devices and sent to Pub/Sub, and I now want to store in Firestore. I am using Firebase for my web app where data should be displayed etc.
I realise this should be a simple task, but am still not finding too much information about it (probably too straight forward). Have looked at using Cloud Functions to retrieve from Pub/Sub and add to Firestore, which ought to work (although I got stuck at credentials), but is there an easier way that I am missing?
Your thinking on using Cloud Functions as the recipient of a PubSub message coming from Cloud IoT Core and in that Cloud Function performing an insert into Firestore is exactly correct.
Here is an example showing just that:
https://blog.usejournal.com/build-a-weather-station-with-google-cloud-iot-cloud-firestore-mongoose-os-android-jetpack-350556d7a
If we Google search using "gcp pubsub firestore" we will find many others.
If you use this technique and run into puzzles/problems, don't hesitate to raise new questions (but first search and see if they have been raised before). In your new questions, please be as detailed as possible. There are many samples available for all sorts of related areas. Have a study of these.

Cloud Firestore & Cloud Firestore for Firebase

What is the difference between Cloud Firestore and Cloud Firestore for Firebase?
Here's a thread asking the same, but someone, please enlighten me.
https://www.reddit.com/r/googlecloud/comments/bb9n46/what_is_the_difference_between_the_cloud/
Is it the same? If not, which one to use?
The link you have shared is talking about the differences between quickstarts, Firestore as a service within GCP and Firestore as a service within Firebase. There also two different consoles for that. Both doing the same thing.
Please note that Cloud Firestore as a service is available with, or without Firebase SDKs.
Is it the same?
The difference that I see between them is that in Firebase console you can set the security rules and you access other services like IAM, BigQuery, more easily.
If not, which one to use?
If you are used to work in a Google Cloud Platform environment, use the Cloud console, otherwise use the Firebase console. So it depends on whatever your preference is.
For more informations, I recommend you read Doug Stevenson's post on medium.com regarding the same topic:
https://medium.com/google-developers/firebase-google-cloud-whats-different-with-cloud-firestore-40f1fc3e6d1e

Where can I find Stackdriver in Firebase console?

I've read in this article that Firestore has launched Stackdriver (in beta) so we can monitor Cloud Firestore read, write and delete operations in near-real time but where can I find it in Firebase console?
You have to go to the Google Cloud Console and not to the Firebase console.
The URL is https://console.cloud.google.com/home/dashboard?project=xxxxxx
There you will find a set of vertical menu items about Stackdriver. You should use the Monitoring menu item to open the Stackdriver console.
Then once in the Stackdriver console, you should open the Resources menu and create a new Metric for your Firestore instance, as shown below:
BTW, Doug Stevenson has recently published a couple of posts which cover (among others) some of the link/differences between the two consoles: https://medium.com/google-developers/firebase-google-cloud-whats-different-with-cloud-functions-612d9e1e89cb and https://medium.com/google-developers/whats-the-relationship-between-firebase-and-google-cloud-57e268a7ff6f

Profiling firebase storage requests

I have an app which uses firebase storage and I am observing an unusual traffic to the storage. The bandwidth usage is unusually high, which shouldn't happen with the usual behavior of the app.
I need to isolate a user or a stored file which causes this unusual bandwidth usage. Is there any way I can get more information about the storage usage, other than the information shown at the Usage tab of firebase console?
Firebase Storage only tracks and shows aggregate data for the usage in your project. It does not tie this usage to specific Firebase Authentication users.
If you need that, consider adding your own tracking for this, for example by logging uploads/downloads to Google Analytics for Firebase.
You can also log to Stack Driver, although it might only be in aggregate there too. For the exact metrics, see the Google Cloud Platform documentation on its storage metrics.
Alternatively you could reach out to Firebase support for personalized help in troubleshooting. But I'm not sure if they have access to the type of data you're looking for.

Resources