Framework ekstensi Looker adalah framework pengembangan yang secara signifikan mengurangi upaya dan kompleksitas pembuatan aplikasi dan alat data JavaScript kustom, seperti:
- Aplikasi platform internal untuk perusahaan Anda
- Platform eksternal untuk pelanggan Anda, seperti portal pelanggan untuk aplikasi Analisis Tersemat yang dibuat dengan data di Looker
- Alat internal yang ditargetkan
- Aplikasi untuk penyematan dalam aplikasi eksternal
Contoh ekstensi Looker saat ini yang tersedia di Looker Marketplace mencakup Kamus Data Looker dan Diagram LookML.
Mengapa menggunakan framework ekstensi?
Beberapa bagian dari membangun aplikasi web mudah dan menyenangkan, sementara yang lain jelas lebih memakan waktu dan tidak terlalu menyenangkan. Kerangka kerja ekstensi membantu Anda dengan merampingkan banyak tugas yang tidak begitu menyenangkan ini.
Framework ekstensi menangani beberapa aspek yang lebih membosankan dalam membangun aplikasi web sehingga Anda dapat segera fokus untuk memulai pengembangan. Aplikasi dan alat kustom yang dibuat dengan framework ekstensi dapat diakses dari dalam Looker, sehingga Looker dapat menangani jenis fungsi berikut, seperti:
- Authentication — Memungkinkan Anda menggunakan opsi autentikasi Looker yang ada untuk login (seperti login sandi, LDAP, SAML, dan OpenID Connect).
- Pengelolaan izin dan kontrol akses.
- Akses API — Memungkinkan Anda memanfaatkan resource developer umum lainnya, seperti endpoint API pihak ketiga, dalam Looker.
Fitur framework ekstensi
Framework ekstensi Looker mencakup fitur berikut:
- SDK Ekstensi Looker, yang menyediakan fungsi untuk akses API publik Looker dan untuk berinteraksi dalam lingkungan Looker.
- Komponen Looker, library komponen UI React bawaan yang dapat digunakan di ekstensi.
- Embed SDK, library yang dapat Anda gunakan untuk menyematkan dasbor, Tampilan, dan Jelajah di ekstensi Anda. Lihat ekstensi wastafel dapur untuk contoh kode. Anda juga dapat menggunakan Embed SDK untuk menyematkan ekstensi ke aplikasi pihak ketiga. Cookie harus diaktifkan di browser saat Anda menyematkan Eksplorasi, Tampilan, atau dasbor ke ekstensi.
- Utilitas
create-looker-extension
, yang membuat ekstensi dasar yang menyertakan semua file ekstensi dan dependensi yang diperlukan, dan dapat Anda gunakan sebagai titik awal untuk membuat ekstensi. - Repositori contoh framework ekstensi Looker kami, yang menyertakan template dan contoh ekstensi untuk membantu Anda memulai dengan cepat.
- Kemampuan untuk mengakses endpoint API pihak ketiga dan menambahkan data pihak ketiga ke ekstensi Anda.
Kemampuan untuk membuat ekstensi layar penuh dalam Looker. Ekstensi layar penuh dapat digunakan untuk aplikasi platform internal atau eksternal.
Pada ekstensi layar penuh, Anda dapat mencegah sekelompok pengguna membuka bagian Looker lain dari ekstensi dengan menambahkan pengguna ke grup pengguna Khusus Ekstensi. Anda juga dapat menghapus menu navigasi Looker dengan mengganti
/extensions
dengan/spartan
di URL ekstensi.Kemampuan untuk mengonfigurasi kunci akses untuk ekstensi Anda sehingga pengguna harus memasukkan kunci untuk menjalankan ekstensi. Cara ini berguna jika Anda ingin mengenakan biaya untuk ekstensi, tetapi Anda harus menggunakan izin Looker standar untuk membuka akses bagi orang yang tidak dapat mengakses ekstensi.
Mulai Looker 24.0, ekstensi dapat dikembangkan untuk berjalan di kartu di dasbor. Ekstensi yang mendukung pengoperasian sebagai kartu atau visualisasi dapat ditambahkan saat dasbor berada dalam mode edit atau disimpan ke dasbor sebagai visualisasi dari Jelajah. Ekstensi juga dapat dikonfigurasi sebagai kartu di dasbor LookML.
Persyaratan framework ekstensi
Untuk mengembangkan aplikasi menggunakan framework ekstensi Looker:
- Anda akan memerlukan izin developer LookML ke instance Anda.
- Admin Looker Anda harus mengaktifkan fitur Framework Ekstensi.
- Sebaiknya pahami JavaScript atau TypeScript.
- Sebaiknya pengembangan di React, meskipun ada SDK ekstensi untuk JavaScript mentah.
Agar dapat berjalan di dalam Looker, setiap ekstensi, apa pun fungsinya, harus menyertakan elemen berikut di dalam Looker:
Project LookML yang:
- Menyertakan file model
- Mencakup file manifes project
- Terhubung ke repositori Git
File model LookML memerlukan parameter
connection
yang mengarah ke koneksi database yang valid pada instance Anda.File manifes project memerlukan parameter
application
. Parameterapplication
memberikan label pada ekstensi, memberi tahu Looker tempat untuk menemukan JavaScript ekstensi, dan memberikan daftar hak ekstensi. Hak menentukan resource Looker yang dapat diakses ekstensi. Ekstensi tidak akan dapat mengakses resource Looker kecuali jika resource tersebut tercantum dalam hak.Berikut adalah contoh file manifes project dengan parameter
application
:project_name: "super_duper_extension" application: super_duper_extension { label: "Super Duper Extension" url: "http://localhost:8080/dist/bundle.js" mount_points: { standalone: no } entitlements: { local_storage: no navigation: no new_window: no new_window_external_urls: [] use_form_submit: yes use_embeds: no use_downloads: no core_api_methods: [] external_api_urls: [] oauth2_urls: [] scoped_user_attributes: [] global_user_attributes: [] } }
Untuk mengetahui detailnya, lihat halaman dokumentasi parameter
application
.
Memulai pengembangan dengan framework ekstensi Looker
Cara termudah untuk memulai adalah terlebih dahulu membuat ekstensi awal baru dari template, lalu menyesuaikan dan menambahkan fungsi ke pemicu tersebut. Hal ini memastikan bahwa semua konfigurasi dan pengemasan sudah benar, yang mungkin sulit dilakukan secara manual. Lihat halaman dokumentasi Membuat ekstensi Looker untuk mendapatkan petunjuk tentang cara membuat project Looker baru untuk ekstensi Anda dan membuat ekstensi awal.
Untuk template yang lebih disesuaikan atau lanjutan, Anda dapat menjelajahi repositori Contoh Framework Ekstensi Looker. Setiap ekstensi dalam repositori tersebut dapat di-clone dan digunakan kembali sebagai titik awal untuk project Anda.
Setelah membuat ekstensi sederhana dan memverifikasi bahwa semuanya berfungsi, Anda dapat mulai menambahkan fungsi dan penyesuaian tambahan:
Anda dapat melihat daftar kasus penggunaan umum dengan kode contoh di halaman dokumentasi Contoh kode framework ekstensi Looker.
Referensikan situs Komponen UI Looker untuk menggunakan library komponen kami guna mengembangkan UI dan tata letak yang cepat.
Template Kitchensink Ekstensi Looker adalah ekstensi yang menyediakan contoh berbagai macam fungsi ekstensi. Anda dapat menggunakan {i>template<i} ini sebagai ensiklopedia atau panduan referensi, tetapi bukan sebagai titik awal atau {i>template<i} yang sebenarnya. Sebaiknya gunakan generator ekstensi kami atau clone salah satu contoh yang lebih sederhana untuk memulai.
Contoh ekstensi yang dapat digunakan sebagai kartu dasbor juga tersedia. Ekstensi visualisasi kartu menunjukkan cara membuat visualisasi kustom menggunakan framework ekstensi. Ekstensi SDK kartu menunjukkan metode API yang tersedia dan khusus untuk ekstensi kartu.