Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Versi Server: 2019-12-12 atau yang lebih baru.
Umpan perubahan menyediakan log transaksi yang diurutkan, dijamin, tahan lama, tidak dapat diubah, dan baca-saja dari semua perubahan yang terjadi pada metadata blob dan blob di akun penyimpanan Anda. Aplikasi klien dapat membaca log ini kapan saja. Umpan perubahan memungkinkan Anda untuk membangun solusi yang efisien dan dapat diskalakan yang memproses peristiwa perubahan yang terjadi di akun Blob Storage Anda dengan biaya rendah.
Proyek ini menyediakan pustaka klien di JavaScript yang memudahkan penggunaan umpan perubahan.
Gunakan pustaka klien dalam paket ini untuk:
- Membaca peristiwa umpan perubahan, semua atau dalam rentang waktu
- Melanjutkan membaca peristiwa dari posisi tersimpan
Tautan utama:
Memulai
Lingkungan yang didukung saat ini
- Versi LTS dari Node.js
- Safari, Chrome, Edge, dan Firefox versi terbaru.
Lihat kebijakan dukungan kami untuk detail selengkapnya.
Prasyarat
Instal paketnya
Cara yang disukai untuk menginstal pustaka klien Azure Storage Blob Change Feed untuk JavaScript adalah dengan menggunakan manajer paket npm. Ketik berikut ini ke dalam jendela terminal:
npm install @azure/storage-blob-changefeed
Mengautentikasi klien
Pustaka ini menggunakan yang diautentikasi BlobServiceClient untuk menginisialisasi. Lihat storage-blob untuk cara mengautentikasi BlobServiceClient.
Kompatibilitas
Untuk saat ini, pustaka ini hanya kompatibel dengan Node.js.
Konsep utama
Umpan perubahan disimpan sebagai blob dalam kontainer khusus di akun penyimpanan Anda dengan harga blob standar. Anda dapat mengontrol periode retensi file-file ini berdasarkan kebutuhan Anda. Peristiwa perubahan ditambahkan ke umpan perubahan sebagai rekaman dalam spesifikasi format Apache Avro: format biner ringkas dan cepat, yang menyediakan struktur data yang kaya dengan skema sebaris. Format ini banyak digunakan dalam ekosistem Hadoop, Azure Stream Analytics, dan Azure Data Factory.
Pustaka ini menawarkan klien yang dapat Anda gunakan untuk mengambil peristiwa perubahan.
Contoh
- Menginisialisasi klien umpan perubahan
- Membaca semua peristiwa di Umpan Perubahan
- Melanjutkan membaca peristiwa dengan continuationToken
- Membaca peristiwa dalam rentang waktu
Menginisialisasi klien umpan perubahan
BlobChangeFeedClient membutuhkan parameter BlobServiceClient yang hampir sama untuk menginisialisasi. Lihat storage-blob untuk cara membuat klien blob service. Berikut contohnya menggunakan StorageSharedKeyCredential.
const { StorageSharedKeyCredential } = require("@azure/storage-blob");
const { BlobChangeFeedClient } = require("@azure/storage-blob-changefeed");
// Enter your storage account name and shared key
const account = "<account>";
const accountKey = "<accountkey>";
// Use StorageSharedKeyCredential with storage account and account key
// StorageSharedKeyCredential is only available in Node.js runtime, not in browsers
const sharedKeyCredential = new StorageSharedKeyCredential(account, accountKey);
const changeFeedClient = new BlobChangeFeedClient(
// When using AnonymousCredential, following url should include a valid SAS or support public access
`https://${account}.blob.core.windows.net`,
sharedKeyCredential
);
Membaca semua peristiwa di Umpan Perubahan
Gunakan BlobChangeFeedClient.listChanges() untuk mendapatkan iterator untuk melakukan iterasi melalui peristiwa perubahan.
const { BlobChangeFeedEvent } = require("@azure/storage-blob-changefeed");
let changeFeedEvents = [];
for await (const event of changeFeedClient.listChanges()) {
changeFeedEvents.push(event);
}
Menurut halaman.
const { BlobChangeFeedEvent } = require("@azure/storage-blob-changefeed");
let changeFeedEvents = [];
for await (const eventPage of changeFeedClient.listChanges().byPage()) {
for (const event of eventPage.events) {
changeFeedEvents.push(event);
}
}
Melanjutkan membaca peristiwa dengan continuationToken
const { BlobChangeFeedEvent } = require("@azure/storage-blob-changefeed");
let changeFeedEvents = [];
const firstPage = await changeFeedClient
.listChanges()
.byPage({ maxPageSize: 10 })
.next();
for (const event of firstPage.value.events) {
changeFeedEvents.push(event);
}
// Resume iterating from the previous position with the continuationToken.
for await (const eventPage of changeFeedClient
.listChanges()
.byPage({ continuationToken: firstPage.value.continuationToken })) {
for (const event of eventPage.events) {
changeFeedEvents.push(event);
}
}
Membaca peristiwa dalam rentang waktu
Lewati waktu mulai dan waktu akhir untuk BlobChangeFeedClient.listChanges() mengambil peristiwa dalam rentang waktu.
Perhatikan bahwa untuk saat ini, klien umpan perubahan akan membulatkan waktu mulai ke bawah ke jam terdekat, dan waktu akhir putaran hingga jam berikutnya.
const { BlobChangeFeedEvent } = require("@azure/storage-blob-changefeed");
const start = new Date(Date.UTC(2020, 1, 21, 22, 30, 0)); // will be rounded down to 22:00
const end = new Date(Date.UTC(2020, 4, 8, 21, 10, 0)); // will be rounded up to 22:00
let changeFeedEvents = [];
// You can also provide just a start or end time.
for await (const event of changeFeedClient.listChanges({ start, end })) {
changeFeedEvents.push(event);
}
Pemecahan Masalah
Mengaktifkan pengelogan dapat membantu menemukan informasi yang berguna tentang kegagalan. Untuk melihat log permintaan dan respons HTTP, atur variabel lingkungan AZURE_LOG_LEVEL ke info. Atau, pengelogan dapat diaktifkan saat runtime dengan memanggil setLogLevel di @azure/logger:
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
Langkah berikutnya
Sampel kode lainnya:
- Sampel Umpan Perubahan Blob Storage (JavaScript)
- Sampel Umpan Perubahan Penyimpanan Blob (TypeScript)
- Kasus Pengujian Umpan Perubahan Blob Storage
Berkontribusi
Jika Anda ingin berkontribusi pada pustaka ini, baca panduan berkontribusi untuk mempelajari selengkapnya tentang cara membuat dan menguji kode.
Lihat juga Panduan khusus penyimpanan untuk informasi tambahan tentang menyiapkan lingkungan pengujian untuk pustaka penyimpanan.

Azure SDK for JavaScript