Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

🐛 [firestore-bigquery-export] Custom event handler for onSuccess not called

Đang mở
#2,199 9 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
48/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Ít trao đổi
Công nghệ
typescript
Lĩnh vực
api, backend

Hướng nghiên cứu

Bắt đầu với đường dẫn phát hành sự kiện tùy chỉnh của extension firestore-bigquery-export và so sánh với cấu hình kênh, khu vực và loại sự kiện Eventarc được cung cấp. Tái tạo thiết lập bằng cấu hình được ghi chép và handler TypeScript, sau đó kiểm tra log của extension và Eventarc. Được xem là hoàn tất khi một lần đồng bộ BigQuery thành công phát hành onSuccess và handler thực thi với dữ liệu sự kiện.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

extension: firestore-bigquery-export reproduced type: bug
[READ] Step 1: Are you in the right place?

Issues filed here should be about bugs for a specific extension in this repository.
If you have a general question, need help debugging, or fall into some
other category use one of these other channels:

  • For general technical questions, post a question on StackOverflow
    with the firebase tag.
  • For general Firebase discussion, use the firebase-talk
    google group.
  • To file a bug against the Firebase Extensions platform, or for an issue affecting multiple extensions, please reach out to
    Firebase support directly.
[REQUIRED] Step 2: Describe your configuration
  • Extension name: [firestore-bigquery-export]
  • Extension version: firebase/[email protected]
  • Configuration values (redact info where appropriate):
    ALLOWED_EVENT_TYPES=firebase.extensions.firestore-counter.v1.onSuccess
    BIGQUERY_PROJECT_ID=${param:PROJECT_ID}
    COLLECTION_PATH=recipes
    DATASET_ID=recipes_dataset_export_raw
    DATASET_LOCATION=europe-west3
    EVENTARC_CHANNEL=projects/my-xxx/locations/us-central1/channels/firebase
    EXCLUDE_OLD_DATA=no
    LOG_FAILED_EXPORTS=no
    MAX_DISPATCHES_PER_SECOND=100
    TABLE_ID=recipes_table_export_raw
    TABLE_PARTITIONING=NONE
    TIME_PARTITIONING_FIELD_TYPE=omit
    USE_COLLECTION_GROUP_QUERY=no
    USE_NEW_SNAPSHOT_QUERY_SYNTAX=yes
    WILDCARD_IDS=false
[REQUIRED] Step 3: Describe the problem

I've setup firestore-bigquery-export to raise the event firebase.extensions.firestore-counter.v1.onSuccess. Whats quite odd is that in the 'Extension configuration' view of the extension instance the description of this event is 'Occurs when image resizing completes successfully. The event will contain further details about specific formats and sizes.'. Seems to be a copy/paste from the other extension ;)
I implemented and deployed a custom event handler as firebase v2 function and deployed it in the same firebase project (region of the function us-central1). The actual sync of the firebase data into BigQuery works fine. However, my event handler for onSuccess is never executed and I also cannot confirm that the event is even raised (because I can't find any logs about it).
In GC console unter Eventarc I see that the channel and trigger have been created with the correct with the correct destination. Trigger and channel are both in region us-central1.

image

image

Steps to reproduce:

Setup a Firebase project with a firestore collection in europe-west3 and install the firestore-bigquery-export extension with mentioned config.
Deploy the following firebase function as event handler.

import eventarc = require('firebase-functions/v2/eventarc')
import logger = require('firebase-functions/logger')

exports.onBigQuerySyncSuccess = eventarc.onCustomEventPublished(
{
eventType: 'firebase.extensions.firestore-counter.v1.onSuccess',
channel: projects/${firebaseFunctionsParams.projectID}/locations/us-central1/channels/firebase,
region: 'us-central1',
},
(event) => {
logger.info('handled firebase.extensions.firestore-counter.v1.onSuccess; received data', event)
return Promise.resolve()
})

Expected result

When changing a document in the collection it is syned into BigQuery and afterward the event handler onBigQuerySyncSuccess is executed.

Actual result

Sync into BigQuery works, event handler is not executed. Somehow I have the impression that the event isn't even raised.

In the GC logs there is a log entry for ext-firestore-bigquery-export-fsexportbigquery with description "Initializing extension with configuration". The "jsonPayload" does not include eventarc channel like in the extensions config data:
jsonPayload: {
bqProjectId: "my-xxx"
clustering: null
collectionPath: "recipes"
databaseId: "(default)"
datasetId: "recipes_dataset_export_raw"
datasetLocation: "europe-west3"
doBackfill: false
docsPerBackfill: 200
excludeOldData: false
initialized: false
instanceId: "firestore-bigquery-export"
location: "us-central1"
logFailedExportData: false
maxDispatchesPerSecond: 100
message: "Initializing extension with configuration"
tableId: "recipes_table_export_raw"
timePartitioning: null
useCollectionGroupQuery: false
useNewSnapshotQuerySyntax: true
wildcardIds: false
}

Thanks,
Max

Ngôn ngữ chính
TypeScript
Star
978
Fork
433
Merge trung bình
20 giờ 44 phút
Pull request đã merge (30 ngày)
17

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của firebase/extensions

Tất cả issue của firebase/extensions

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.