Cloud Function 部署问题以安排每日 Cloud SQL 导出到 Google Cloud Storage
Posted
技术标签:
【中文标题】Cloud Function 部署问题以安排每日 Cloud SQL 导出到 Google Cloud Storage【英文标题】:Problem with Cloud Function deployment to schedule daily Cloud SQL export to Google Cloud Storage 【发布时间】:2020-03-17 09:13:20 【问题描述】:我使用这篇文章制作了一个 Cloud Function 来将 Cloud SQL 数据库导出到 Cloud Storage: https://medium.com/@kennethteh90/how-to-schedule-daily-cloud-sql-export-to-google-cloud-storage-4c1bd360af06
这是我的功能:
const google = require("googleapis");
const auth = require("google-auth-library");
var sqladmin = google.sqladmin("v1beta4");
exports.exportDatabase = (_req, res) =>
async function doBackup()
const authRes = await auth.getApplicationDefault();
let authClient = authRes.credential;
var request =
project: "project ID",
instance: "instance ID",
resource:
// Contains details about the export operation.
exportContext:
kind: "sql#exportContext",
fileType: "SQL", // CSV
uri: `gs://bucketName/folderName/backup-$Date.now().gz`,
databases: ["database"]
,
// Auth client
auth: authClient
;
// Kick off export with requested arguments.
sqladmin.instances.export(request, function(err, result)
if (err)
console.log(err);
else
console.log(result);
res.status(200).send("Command completed", err, result);
);
doBackup();
;
package.json:
"name": "export-database",
"version": "0.0.1",
"dependencies":
"googleapis": "^39.2.0",
"google-auth-library": "3.1.2"
作为运行时,我使用 Node.js 8。 要执行的函数:doBackup()
我在以下期间收到错误:
函数加载用户代码失败。错误信息:文件 index.js 定义的 Node.js 模块应导出名为 doBackup() 的函数
有人可以帮我解决这个错误吗?我不明白为什么我会收到这个并且不能更进一步。
【问题讨论】:
【参考方案1】:函数加载用户代码失败。错误信息:文件 index.js 定义的 Node.js 模块应导出名为 doBackup() 的函数
您要执行的云函数名称,根据错误消息是doBackup
,但您在index.js
中调用的函数是exportDatabase
。请确保这些名称相同,例如将exportDatabase
更改为doBackup
或将要执行的函数更改为exportDatabase
【讨论】:
非常感谢!!你的建议停止了。而且我认为问题在于我在要执行的函数名称之后加上“ () ”。无论如何,谢谢!以上是关于Cloud Function 部署问题以安排每日 Cloud SQL 导出到 Google Cloud Storage的主要内容,如果未能解决你的问题,请参考以下文章
在 Google Cloud DataProc 上安排 cron 作业
Firebase Cloud Function 部署 tslint 错误
Firebase 中的 Function Cloud 是不是免费(Cloud Functions 部署需要按需付费 (Blaze) 计费方案)