Cloud Functions for Firebase - Compte de facturation non configuré

88

Je viens de mettre en œuvre les nouvelles fonctions Cloud pour Firebase, mais il y a quelque chose dans le journal qui me dérange:

Compte de facturation non configuré. Le réseau externe n'est pas accessible et les quotas sont sévèrement limités. Configurer le compte de facturation pour supprimer ces restrictions

J'ai réussi à accéder à la fonction depuis le réseau externe, alors je me demande si je dois vraiment donner mon compte de facturation? Il n'y a rien à ce sujet dans la documentation de Firebase.

J'utilise le plan d'abonnement Spark à des fins de test personnel et je ne souhaite pas ajouter d'informations de facturation si je ne vais pas encore payer quoi que ce soit.

Hristo Stoyanov
la source

Réponses:

89

Le message d'avertissement "Compte de facturation non configuré" est automatiquement enregistré par Google Cloud Functions lorsqu'aucun compte de facturation n'est configuré. Cela ne signifie pas que votre code ne fonctionne pas, mais il est simplement là pour vous rappeler au cas où vous auriez un problème.


La restriction concerne l'accès sortant - par exemple, votre fonction peut-elle demander des ressources sur Internet en général. Il est tout à fait normal d'utiliser une fonction pour répondre à un webhook ou pour accéder à des services internes à Google tels que la base de données en temps réel.

Si vous souhaitez appeler un service Web tiers (par exemple), vous devez activer la facturation.

Pour les autres quotas, jetez un œil à: https://firebase.google.com/pricing/ - comme vous pouvez le voir, il y a des limites au nombre d'appels (125 000 au moment de la rédaction) et au processeur et à la mémoire (40k cpu- secondes et 40 000 Go-secondes) dans l'offre gratuite.

Ian Barber
la source
Merci pour la réponse, qu'en est-il des «quotas limités»?
Hristo Stoyanov
Qu'en est-il de l'envoi d'un e-mail en réponse à une modification de la base de données? Activez-vous la facturation pour cela? Utilisation des services Gmail par exemple.
Lancelot
Gmail serait une API Google, donc devrait être OK, quelque chose comme sendgrid pour lequel vous auriez besoin d'une facturation.
Ian Barber
@IanBarber Cela signifie activer les plans Blaze / Flame? Le forfait Blaze ne se facture-t-il qu'une fois les limites gratuites utilisées?
SidFerreira
2
Est-ce que tout le monde comprend cela? Si j'obtiens ce journal, dois-je ajouter des informations de facturation?
38

Les réponses de Doug Stevens m'ont le mieux aidé:

TL; DR: C'est un message d'avertissement. si vous ne faites pas d'appels sortants, tout va bien

Ce message d'avertissement apparaît pour toutes les fonctions lors de l'exécution sur le plan Spark. C'est juste un avertissement - vous pouvez l'ignorer si vous faites vous-même un réseau sortant.

Nous cherchons à modifier ou supprimer ce message afin qu'il soit moins déroutant.

[...]

Bernatfortet
la source
7
Ce message d'erreur m'a aussi dérouté! Je vote pour que le message soit plus clair.
Thomas David Kehoe
Vous pouvez filtrer ce message dans la console en cliquant sur le menu déroulant «Tous les niveaux de journalisation» et en choisissant «Info». Tous vos journaux et erreurs s'afficheront toujours, mais le message de bourdonnement disparaîtra.
Jack Steam
7

Le premier appel se produit mais est marqué lorsqu'il est dans le plan Spark et est appelé à partir d'un réseau externe (regardez les journaux)

Au moment d'écrire ces lignes, le plan appelé BLAZE (Pay as you go) permet la mise en réseau (accès externe) et dispose d'un niveau gratuit perpétuel.

Les 2 000 000 premiers appels, 400 000 Go-sec, 200 000 CPU-sec et 5 Go de trafic de sortie Internet sont fournis gratuitement chaque mois. Vous n'êtes facturé que sur l'utilisation au-delà de cette attribution gratuite.

En savoir plus sur la tarification de la fonction cloud https://cloud.google.com/functions/pricing

Satta Ravi
la source
1
Donc, vous dites que je peux activer la facturation et commencer à envoyer des e-mails en utilisant nodemailer et autres sans être facturé
Kingston Fortune
7

Assurez-vous que votre projet est associé à un compte de facturation.

Si vous accédez à https://console.cloud.google.com/billing

Vous devriez pouvoir y trouver votre projet Firebase. Sinon, vous devrez vous rendre dans la liste des projets, et dans le menu de vos projets, sélectionner facturation puis y associer un compte de facturation.

entrez la description de l'image ici

Samer
la source
2

1.Dépréciez la version 8 du nœud de jeu de versions de nœud

   "engines": {
   "node": "8"
   },

2.Ensuite, déployez Firebase en suivant la commande comme vous le savez

> firebase deploy
Ensuite, vous obtiendrez ce type de sortie https://i.stack.imgur.com/4hWQZ.png dans votre terminal si vous avez remarqué que l' image ci-dessus marquée d'une ligne rouge est la région hébergée de votre projet Firebase. si vous aussi vous obtenez le même résultat tout est fait nous sommes à l'étape finale

manuellement, nous devons atteindre le point de terminaison de notre projet

 https://yourregion-firebaseprojectname.cloudfunctions.net/yourfunctionname
 (exported function name)
 

Dans mon cas https://us-central1-socialape-d5dab.cloudfunctions.net/helloWorld

ou suivez ces étapes

1.Depreciate node version to 8 
2. firebase deploy  
3. you'll get deploy complete message above that message you'll see 
   functions[helloWorld(us-central)]:Succesful update operation .
4. this us-central  is your project hosted region 
   prefix to this [helloWorld   is your function name  get this information from uour output terminal.   
5.  After  that https://yourregion-firebaseprojectname.cloudfunctions.net/yourfunctionname
 (exported function name)       which is  helloWorld
William James
la source
0

Oui, vous devez passer au plan Blaze à partir de votre plan gratuit existant qui est Spark. Vous ne serez pas facturé jusqu'à ce que vous dépassiez les avantages du plan Spark.

Vamshidhar Reddy
la source