Firebase功能缺少日志

时间:2017-12-07 09:03:50

标签: firebase google-cloud-functions google-cloud-firestore

我有一个上传到Firebase函数的简单函数,它使用外部依赖项(jimp)。我的代码有一些“console.log()”来跟踪触发函数时发生的事情(通过Firstore中的'write'动作)。

根据我在firebase控制台中可以看到的日志, enter image description here 函数的每一步都正确运行,直到它第一次调用jimp对象。此时,控制台上不再有日志。

const Jimp  = require('jimp');
const os = require('os');
...
exports.manageImage2 = functions.firestore
    .document('/items/{docId}')
    .onWrite(event => {
        console.info('event triggered:', event);
        console.log('tmpDir', os.tmpdir());
        const originalUrl = data.original_file_url;
        const imageSize = data.size;

        if (imageSize > maxSize) {
            console.log(`Image is too big (${imageSize})`);
            Jimp.read(originalUrl, (err, image) => {
 ...

我觉得依赖有问题,但我不知道它可能是什么。

我显然在本地运行我的代码有任何问题,并确保库在package.json

的依赖项中正确列出

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

exports.manageImage2 = functions.firestore .document('/items/{docId}') .onWrite(event => { console.info('event triggered:', event); console.log('tmpDir', os.tmpdir()); const originalUrl = data.original_file_url; const imageSize = data.size; if (imageSize > maxSize) { console.log(`Image is too big (${imageSize})`); return new Promise(resolve => Jimp.read(originalUrl, (err, image) => { // … // resolve(result); })); } }); 是一个回调样式的异步函数。使用promise来使其适应功能。

import numpy as np
def g_C(A,B):
  A = np.asanyarray(A)
  assert A.ndim == 2 # to assert that A is a multidimensional array.
  get = (np.abs(A-B)).argmin()
  return (A[get])

如需解释,请阅读:https://firebase.google.com/docs/functions/terminate-functions