Облачные функции для Firebase - платежный аккаунт не настроен

88

Я только что реализовал новые облачные функции для Firebase, но что-то в журнале меня беспокоит:

Платежный аккаунт не настроен. Внешняя сеть недоступна, а квоты сильно ограничены. Настройте платежный аккаунт, чтобы снять эти ограничения

Мне действительно удалось получить доступ к функции из внешней сети, поэтому мне интересно, действительно ли мне нужно предоставлять свою учетную запись для выставления счетов? В документации по firebase ничего об этом нет.

Я использую план подписки Spark для личных тестовых целей и не хочу добавлять платежную информацию, если я еще не собираюсь ни за что платить.

Христо Стоянов
источник

Ответы:

89

Предупреждающее сообщение «Платежная учетная запись не настроена» автоматически регистрируется Google Cloud Functions, если платежная учетная запись не настроена. Это не значит, что ваш код не работает, это просто напоминание на случай, если у вас возникнут проблемы.


Ограничение касается исходящего доступа - например, может ли ваша функция запрашивать ресурсы из Интернета. Совершенно нормально использовать функцию для ответа на веб-перехватчик или для доступа к внутренним службам Google, таким как база данных в реальном времени.

Если вы хотите вызвать стороннюю веб-службу (например), вам необходимо включить биллинг.

Чтобы узнать о других квотах, посмотрите: https://firebase.google.com/pricing/ - как вы можете видеть, существуют ограничения на количество вызовов (125 000 на момент написания), а также на ЦП и память (40 К ЦП- секунд и 40k ГБ-секунд) на уровне бесплатного пользования.

Ян Барбер
источник
Спасибо за ответ, а как насчет «ограниченных квот»?
Христо Стоянов
Как насчет отправки электронного письма в ответ на изменение в базе данных? Включите ли вы для этого биллинг? Например, с помощью сервисов gmail.
Lancelot
Gmail будет API Google, так что все должно быть в порядке, что-то вроде sendgrid, для которого вам потребуется выставить счет.
Ian Barber
@IanBarber Значит активировать планы Blaze / Flame? Плата за тарифный план Blaze взимается только после использования бесплатных лимитов?
SidFerreira
2
Все это понимают? Если я получаю этот журнал, мне нужно добавить платежную информацию?
38

Ответы Дуга Стивенсона помогли мне лучше всего:

TL; DR: это предупреждающее сообщение. если вы не делаете исходящие звонки, все в порядке

Это предупреждающее сообщение появляется для всех функций при выполнении в плане Spark. Это всего лишь предупреждение - вы можете проигнорировать его, если создаете какие-либо исходящие сети самостоятельно.

Мы планируем изменить или удалить это сообщение, чтобы оно было менее запутанным.

[...]

Bernatfortet
источник
7
Это сообщение об ошибке меня тоже смутило! Я голосую за то, чтобы сообщение было более ясным.
Томас Дэвид Кехо
Вы можете отфильтровать это сообщение в консоли, щелкнув раскрывающийся список «Все уровни журнала» и выбрав «Информация». Все ваши журналы и ошибки по-прежнему будут отображаться, но сообщение об ошибке исчезнет.
Джек Стим,
7

Первый вызов происходит, но отмечается, когда он находится в плане искры и вызывается из внешней сети (посмотрите журналы)

На момент написания этой статьи план под названием BLAZE (Pay as you go) разрешает работу в сети (внешний доступ) и имеет бессрочный уровень бесплатного пользования.

Первые 2 000 000 вызовов, 400 000 ГБ-сек, 200 000 ЦП-секунд и 5 ГБ исходящего интернет-трафика предоставляются бесплатно каждый месяц. Вы платите только за использование сверх этого бесплатного выделения.

Подробнее о ценах на облачные функции https://cloud.google.com/functions/pricing

Сатта Рави
источник
1
Итак, вы говорите, что я могу включить биллинг и начать отправлять почту с помощью nodemailer и тому подобного, не получая счета
Kingston Fortune
7

Убедитесь, что ваш проект привязан к платежной учетной записи.

Если вы перейдете на https://console.cloud.google.com/billing

Вы должны найти там свой проект Firebase. Если нет, то вам нужно будет перейти к списку проектов и в меню ваших проектов выбрать биллинг, а затем привязать к нему платежный аккаунт.

введите описание изображения здесь

Самер
источник
2

1.Признайте установку версии узла версии 8.

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

2. Затем разверните firebase, выполнив следующую команду, как вы, ребята, знаете

> firebase deploy
Затем вы получите этот тип вывода https://i.stack.imgur.com/4hWQZ.png в своем терминале, если вы заметили изображение выше, отмеченное красной линией, это регион, в котором размещен ваш проект firebase. если вы тоже получите такой же результат, все сделано, мы на последнем этапе

вручную мы должны попасть в конечную точку нашего проекта

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

В моем случае https://us-central1-socialape-d5dab.cloudfunctions.net/helloWorld

или следуйте этим шагам

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
Уильям Джеймс
источник
0

Да, вам нужно перейти на план Blaze с существующего бесплатного плана, который является Spark. Вы не будете платить, пока не превысите льготы плана Spark.

Вамшидхар Редди
источник