如何在将消息发布到 Google Cloud Pub/Sub 时找出未找到的资源?

Posted

技术标签:

【中文标题】如何在将消息发布到 Google Cloud Pub/Sub 时找出未找到的资源?【英文标题】:How to find out which resource not found while publishing message to Google Cloud Pub/Sub? 【发布时间】:2021-07-20 16:46:08 【问题描述】:

我对 Google Cloud 很陌生。我想从我的 nodejs 应用程序完成消息发布到 Google Cloud Pub/Sub 服务。但是,我在发布消息时收到以下错误:

Received error while publishing: Error: 5 NOT_FOUND: Resource not found (resource=193060).

我想不通resource=193060。 193060是什么?

这是我的 server.js

const express = require('express');
const app = express();
const bodyParser = require("body-parser");
const PubSub = require('@google-cloud/pubsub');

// parse application/json
app.use(bodyParser.json(limit: '10mb'))

// Creates a client; cache this for further use
const pubSubClient = new PubSub();
const topicName = 'projects/codeway-312008/topics/codeway-log';
const data2 = JSON.stringify(
    type: 'event',
    app_id: 'com.codeway.test',
    session_id: 'vIfEMi9kJW',
    event_name: 'about',
    event_time: 1598196427881,
    page: 'settings',
    country: 'US',
    region: 'New Jersey',
    city: 'Newark',
    user_id: '9t0lrnYLQr'
);


async function publishMessage() 
    // Publishes the message as a string, e.g. "Hello, world!" or JSON.stringify(someObject)
    const dataBuffer = Buffer.from(data2);

    try 
        const messageId = await pubSubClient.topic(topicName).publish(dataBuffer);
        console.log(`Message $messageId published.`);
     catch (error) 
        console.error(`Received error while publishing: $error`);
        process.exitCode = 1;
    



publishMessage();
 

我的话题:

【问题讨论】:

【参考方案1】:

看起来缺少的资源是与主题关联的架构。它可能在创建主题后被删除。需要清理错误消息以使其更清晰,因此 Cloud Pub/Sub 团队一定会这样做。

【讨论】:

天哪!我怎么会错过。尴尬。谢谢! 但是,我认为消息细节必须更清楚。

以上是关于如何在将消息发布到 Google Cloud Pub/Sub 时找出未找到的资源?的主要内容,如果未能解决你的问题,请参考以下文章

google-cloud-recommendations 如何识别 UserEvent 是不是被删除?

如何跟踪 Google Cloud 公共数据集的变化?

Google Cloud Messaging 上的特殊消息(推送到 Android)

如何从 Firebase Cloud Function 在 Google Pub/Sub 中发布消息?

获取 Google Cloud PubSub 中单条消息的大小

Google Cloud Pub/Sub - 捕获发送到死信主题的消息的消息传递失败原因[关闭]