Dalam skenario bisnis, data log mungkin disimpan di Logstore atau Metricstore yang berbeda dalam proyek Simple Log Service, atau tersebar di berbagai proyek di wilayah yang berbeda. Fitur StoreView dari proyek Simple Log Service mendukung kueri lintas wilayah dan lintas store untuk meningkatkan efisiensi kerja Anda. Topik ini menjelaskan cara menggunakan StoreView tipe log dan StoreView tipe deret waktu.
Apa itu StoreView
Dalam proyek Simple Log Service, StoreView, LogStore, dan MetricStore semuanya merupakan resource penting. Namun, StoreView bukanlah resource fisik untuk menyimpan log. Ini adalah resource virtual yang dibuat berdasarkan Logstore dan Metricstore untuk mengelola serta menyimpan asosiasi antara beberapa Logstore atau Metricstore. Dengan menggunakan StoreView, Anda dapat melakukan kueri terpadu terhadap log dari Logstore atau Metricstore yang berbeda. Namun, StoreView tidak mendukung operasi modifikasi log. StoreView dikategorikan menjadi log-type StoreViews dan time-series-type StoreViews. log-type StoreView mendukung kueri dan analisis data dari Logstore yang berbeda serta memungkinkan pra-definisi store terkait menggunakan sintaks Structured Process Language (SPL). time-series-type StoreView hanya mendukung kueri data lintas Metricstore yang berbeda.
Dalam log-type StoreView/time-series-type StoreView, Anda dapat melakukan kueri terkait terhadap konten log dari Logstores/Metricstores yang berbeda. Misalnya, jika field age terdapat di Logstore1 dan Logstore2, dan kedua Logstore tersebut diasosiasikan dengan StoreView1, maka kueri terhadap field age di StoreView1 akan mengembalikan semua hasil dari Logstore1 dan Logstore2.

Izin
Jika Anda menggunakan StoreView sebagai pengguna Resource Access Management (RAM) atau dengan mengasumsikan peran RAM, Anda harus memiliki izin yang diperlukan. Untuk informasi lebih lanjut tentang cara menggunakan Akun Alibaba Cloud untuk memberikan izin kepada pengguna RAM atau peran RAM, lihat Buat pengguna RAM dan berikan izin, Buat peran RAM untuk layanan Alibaba Cloud tepercaya dan berikan izin, dan Gunakan peran RAM untuk mengakses resource lintas akun Alibaba Cloud.
Anda dapat memberikan system policies atau custom policies kepada pengguna tersebut.
Kebijakan sistem: Dibuat dan dikelola oleh Alibaba Cloud. Anda dapat menggunakan kebijakan sistem tetapi tidak dapat mengubahnya.
Izin read-only pada Simple Log Service: AliyunLogReadOnlyAccess.
Izin manajemen pada Simple Log Service: AliyunLogFullAccess.
Kebijakan kustom: Anda dapat membuat, memperbarui, dan menghapus kebijakan kustom. Anda harus mengelola versi kebijakan tersebut sendiri.
Saat membuat StoreView atau melakukan kueri data di StoreView, pengguna RAM atau peran RAM harus memiliki izin untuk melakukan kueri log di Logstore untuk semua Logstore dan Metricstore yang terkait. Untuk memberikan izin tersebut, tambahkan konten berikut ke dalam kebijakan kustom:
PentingLogstore dalam kebijakan akses mencakup Logstore dan Metricstore. Kebijakan ini juga berlaku ketika objek operasi Anda adalah Metricstore.
storeview dalam kebijakan akses mencakup log-type StoreViews dan time-series-type StoreViews.
{ "Version": "1", "Statement": [ { "Action": "log:GetLogStoreLogs", "Resource":[ "acs:log:*:*:project/${projectName}/Logstore/*", "acs:log:*:*:project/${projectName}/storeview/*" ], "Effect": "Allow" } ] }
Batasan
Setiap proyek Simple Log Service project mendukung maksimal 10 log-type StoreViews/time-series-type StoreViews secara total.
Setiap log-type StoreView/time-series-type StoreView dapat diasosiasikan dengan maksimal 50 Logstores/Metricstores.
Semua Logstores/Metricstores dalam log-type StoreView/time-series-type StoreView harus dimiliki oleh Akun Alibaba Cloud yang sama.
StoreView hanya mendukung analisis asosiasi antar wilayah di Tiongkok daratan. Analisis lintas wilayah dalam skenario lintas batas tidak didukung.
Kemampuan pra-definisi
Konsep
StoreView tipe log mendukung pra-definisi store terkait menggunakan sintaks SPL saat Anda membuat StoreView tersebut. SPL yang telah didefinisikan sebelumnya hanya mendukung instruksi dan fungsi SPL serta kata kunci instruksi dan fungsi SPL. Anda dapat menggunakan pra-definisi untuk skenario seperti memfilter sebagian data atau menyelesaikan inkonsistensi nama field dalam agregasi dan analisis. Agregasi dan analisis memerlukan konsistensi kunci field. Misalnya, untuk mengagregasi field a dari Logstore1 dan field b dari Logstore2, Anda harus menggunakan extend a = b agar nama kolom menjadi konsisten. Untuk informasi lebih lanjut, lihat Contoh.
Batasan
Saat ini, hanya StoreView tipe log yang mendukung pra-definisi. StoreView tipe deret waktu tidak mendukung pra-definisi.
Instruksi yang didukung
Pra-definisi untuk StoreView tipe log mendukung instruksi dan fungsi SPL serta operator instruksi dan fungsi SPL.
Untuk informasi lebih lanjut tentang fungsi yang didukung oleh SQL dan SPL, lihat Ikhtisar fungsi.
Contoh
Untuk membuat atau memodifikasi StoreView tipe log, lihat Buat tampilan data tipe log.
Sebagai contoh, untuk mengagregasi field a dari Logstore1 dan field b dari Logstore2, Anda dapat menggunakan extend a = b (pra-definisi) saat membuat atau memodifikasi StoreView agar nama kolom menjadi konsisten.
Contoh 1
Pra-definisikan * | where a>1 di Logstore1. Artinya, hanya log dengan a>1 yang akan ditemukan di StoreView dan digunakan untuk analisis selanjutnya.

Contoh 2
Pernyataan SPL pra-definisi * | extend b = a untuk LogStore 1 di StoreView menambahkan field b yang nilainya sama dengan nilai field a ke LogStore 1 untuk agregasi selanjutnya.

Kemampuan kueri
Log-type StoreView
log-type StoreView mendukung kueri lintas Logstore. Misalnya, jika log-type StoreView diasosiasikan dengan dua store, yaitu Logstore-1 dan Logstore-2, dan keduanya berisi field request_method, maka pernyataan kueri (request_method:GET or request_method:POST) and status in [200 299] akan mengembalikan hasil log yang sesuai dari Logstore-1 dan Logstore-2. Untuk informasi lebih lanjut tentang kueri di log-type StoreView, lihat Sintaks dan fungsi kueri.
Asumsikan log-type StoreView berisi dua Logstore dengan konten log yang identik. Saat Anda melakukan kueri terhadap suatu kata kunci, semua hasil dari Logstore yang berbeda akan dikembalikan. Anda dapat menggunakan field tag untuk menentukan asal Logstore dari suatu log.

Time-series-type StoreView
time-series-type StoreView mendukung kueri lintas store. Misalnya, jika time-series-type StoreView diasosiasikan dengan dua store, yaitu metricstore1 dan metricstore2, Anda dapat langsung memasukkan pernyataan Prometheus Query Language (PromQL) di kotak kueri. Mesin komputasi backend secara otomatis menyelesaikan komputasi lintas Metricstore. Untuk informasi lebih lanjut tentang kueri di time-series-type StoreView, lihat Sintaks untuk kueri dan analisis data deret waktu. Untuk membuat atau memodifikasi time-series-type StoreView, lihat Kueri data lintas Metricstore.
Saat ini, StoreView tipe deret waktu mendukung kueri PromQL tetapi tidak mendukung kueri SQL, analisis, atau pra-definisi.

Kemampuan analisis
Konsep
Data View mendukung agregasi dan analisis statistik lintas Store. Misalnya, jika StoreView diasosiasikan dengan LogStore-1 dan LogStore-2, dan keduanya berisi field a, maka pernyataan kueri * | select a, count(1) group by a akan mengembalikan jumlah total field `a` dari LogStore-1 dan LogStore-2.
Karena agregasi dan analisis memerlukan konsistensi kunci field, Anda dapat menggunakan pra-definisi untuk memfilter sebagian data dan mengganti nama field dalam skenario di mana konten log sama tetapi nama kuncinya berbeda. Untuk informasi lebih lanjut, lihat Kemampuan pra-definisi.
Batasan
Saat ini, hanya StoreView tipe log yang mendukung analitik data. StoreView tipe deret waktu tidak mendukung analitik data.
Fungsi yang didukung
Untuk informasi lebih lanjut tentang fungsi yang didukung oleh SQL dan SPL, lihat Ikhtisar fungsi.
Contoh
Contoh 1
log-type StoreView diasosiasikan dengan Logstore yang berbeda dari layanan yang sama, dan konten log di Logstore tersebut identik. Dalam skenario ini, pertama-tama periksa apakah konfigurasi indeks Logstore yang berbeda tersebut sama. Misalnya, periksa apakah semuanya memiliki indeks teks penuh atau apakah konfigurasi indeks bidang yang diperlukan konsisten. Kemudian, tambahkan Logstore yang ingin Anda asosiasikan ke log-type StoreView.
Setelah Anda membuat log-type StoreView, Anda dapat menggunakan SQL untuk analisis seperti biasa. Gambar berikut menunjukkan bahwa statistik untuk nilai status yang berbeda dalam 15 menit terakhir merupakan agregasi dari semua log dari kedua Logstore tersebut.

Contoh 2
log-type StoreView diasosiasikan dengan Logstore yang berbeda dari layanan yang sama, tetapi beberapa field log di Logstore tersebut memiliki nama yang berbeda. Dalam kasus ini, Anda dapat menggunakan pernyataan SPL yang telah didefinisikan sebelumnya untuk mendefinisikan ulang field baru agar sesuai dengan nama kunci Logstore lainnya. Seperti yang ditunjukkan pada gambar berikut, gunakan pernyataan SPL *|extend request_method = method untuk mengganti nama field method menjadi request_method. Klik Preview Data untuk melihat pratinjau hasil data yang telah didefinisikan sebelumnya.
Anda kemudian dapat menggunakan request_method untuk kueri dan analisis.

Perbedaan antara StoreView dan store biasa
Fitur | Logstore/Metricstore | StoreView |
Quick analysis | Didukung | Didukung |
Chart | Didukung | Didukung |
Dashboard | Didukung | Dukungan |
Log download | Didukung | Didukung |
Saved search | Didukung | Tidak didukung |
Scheduled SQL | Didukung | Tidak didukung |
Alert | Didukung | Tidak didukung |
LogReduce | Didukung | Tidak didukung |
Field analysis | Didukung | Tidak didukung |