Framework ekstensi Looker adalah framework pengembangan yang secara signifikan mengurangi upaya dan kompleksitas pembuatan alat dan aplikasi 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 di aplikasi eksternal
Contoh ekstensi Looker saat ini yang tersedia di Looker Marketplace mencakup Looker Data Dictionary dan LookML Diagram.
Mengapa menggunakan framework ekstensi?
Beberapa bagian dari pembuatan aplikasi web mudah dan menyenangkan, sementara bagian lainnya jelas lebih memakan waktu dan tidak terlalu menyenangkan. Framework ekstensi membantu Anda dengan menyederhanakan banyak tugas yang tidak terlalu menyenangkan ini.
Framework ekstensi menangani beberapa aspek yang lebih merepotkan dalam mem-build aplikasi web sehingga Anda dapat langsung berfokus 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:
- Autentikasi — 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:
- Looker Extension SDK, yang menyediakan fungsi untuk akses API publik Looker dan untuk berinteraksi dalam lingkungan Looker.
- Komponen Looker, library komponen UI React bawaan yang dapat Anda gunakan di ekstensi.
- Embed SDK, library yang dapat Anda gunakan untuk menyematkan dasbor, Tampilan, dan Jelajahi di ekstensi. Lihat ekstensi kitchen sink untuk contoh kode. Anda juga dapat menggunakan Embed SDK untuk menyematkan ekstensi ke dalam aplikasi pihak ketiga. Cookie harus diaktifkan di browser saat Anda menyematkan Jelajah, Tampilan, atau dasbor ke dalam ekstensi.
- Utilitas
create-looker-extension
, yang membuat ekstensi dasar yang menyertakan semua file dan dependensi ekstensi yang diperlukan, dan dapat Anda gunakan sebagai titik awal untuk mem-build. - Repositori contoh framework ekstensi Looker kami, yang mencakup 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.
Di ekstensi layar penuh, Anda dapat mencegah sekumpulan pengguna membuka bagian Looker lainnya 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. Hal ini berguna jika Anda ingin mengenakan biaya untuk ekstensi, tetapi Anda harus menggunakan izin Looker standar untuk membatasi akses bagi pengguna yang tidak boleh mengakses ekstensi.
Mulai Looker 24.0, ekstensi dapat dikembangkan untuk dijalankan di kartu di dasbor. Ekstensi yang mendukung untuk dijalankan sebagai kartu atau visualisasi dapat ditambahkan saat dasbor 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 menggunakan framework ekstensi Looker:
- Anda memerlukan izin developer LookML ke instance Anda.
- Admin Looker Anda harus mengaktifkan fitur Extension Framework.
- Sebaiknya Anda memahami JavaScript atau TypeScript.
- Sebaiknya lakukan pengembangan di React, meskipun ada SDK ekstensi untuk JavaScript mentah.
Agar dapat berjalan di dalam Looker, setiap ekstensi, terlepas dari fungsinya, harus menyertakan elemen berikut di dalam Looker:
Project LookML yang memenuhi persyaratan berikut:
- Menyertakan file model
- Menyertakan file manifes project
- Terhubung ke repositori Git
File model LookML memerlukan parameter
connection
yang mengarah ke koneksi database yang valid di instance Anda.File manifes project memerlukan parameter
application
. Parameterapplication
memberi ekstensi label, memberi tahu Looker tempat menemukan JavaScript ekstensi, dan memberikan daftar hak untuk 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
.
Mulai mengembangkan dengan framework ekstensi Looker
Cara termudah untuk memulai adalah dengan membuat ekstensi pemicu baru dari template terlebih dahulu, 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 Mem-build ekstensi Looker untuk mengetahui petunjuk tentang cara membuat project Looker baru untuk ekstensi Anda dan membuat ekstensi awal.
Untuk template lanjutan atau yang lebih disesuaikan, Anda dapat menjelajahi repositori Contoh Framework Ekstensi Looker. Setiap ekstensi di 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 contoh kode di halaman dokumentasi contoh kode framework ekstensi Looker.
Lihat situs Komponen UI Looker untuk menggunakan library komponen kami guna pengembangan UI dan tata letak yang cepat.
Template Kitchensink Ekstensi Looker adalah ekstensi yang memberikan contoh berbagai fungsi ekstensi. Anda dapat menggunakan template ini sebagai ensiklopedia atau panduan referensi, tetapi tidak sebagai titik awal atau template 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 menampilkan metode API yang tersedia dan khusus untuk ekstensi kartu.