Framework ekstensi Looker

Framework ekstensi Looker adalah framework pengembangan yang secara signifikan mengurangi upaya dan kompleksitas dalam membangun 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 di 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 dalam membangun 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 kurang menyenangkan ini.

Framework ekstensi menangani beberapa aspek yang lebih membosankan dalam membangun aplikasi web sehingga Anda dapat langsung berfokus pada pengembangan. Aplikasi dan alat kustom yang dibuat dengan framework ekstensi dapat diakses dari dalam Looker, sehingga Looker dapat menangani jenis fungsi berikut, seperti:

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, Look, dan Eksplorasi di ekstensi Anda. 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 Eksplorasi, Look, atau dasbor ke dalam ekstensi.
  • Utilitas create-looker-extension, yang membuat ekstensi dasar yang mencakup semua file dan dependensi ekstensi yang diperlukan, dan dapat Anda gunakan sebagai titik awal untuk membangunnya.
  • Repositori contoh framework ekstensi Looker kami, yang mencakup template dan ekstensi contoh 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 bernavigasi ke bagian lain Looker 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 ke pengguna yang seharusnya tidak dapat mengakses ekstensi.

  • Mulai Looker 24.0, ekstensi dapat dikembangkan untuk dijalankan di kartu dalam dasbor. Ekstensi yang mendukung 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:

Agar dapat berjalan di dalam Looker, setiap ekstensi, terlepas dari fungsinya, harus menyertakan elemen berikut di dalam Looker:

  • Project LookML yang memenuhi persyaratan berikut:

  • File model LookML memerlukan parameter connection yang mengarah ke koneksi database yang valid di instance Anda.

  • File manifes project memerlukan parameter application. Parameter application memberi ekstensi label, memberi tahu Looker tempat menemukan JavaScript ekstensi, dan menyediakan 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 akses.

    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 starter baru dari template terlebih dahulu, lalu menyesuaikan dan menambahkan fungsi ke starter tersebut. Hal ini memastikan bahwa semua konfigurasi dan pengemasan sudah benar, yang sulit dilakukan secara manual. Lihat halaman dokumentasi Membangun ekstensi Looker untuk mengetahui 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. Ekstensi apa pun di repositori tersebut dapat di-clone dan digunakan kembali sebagai titik awal untuk project Anda.

Setelah membuat ekstensi dasar dan memverifikasi bahwa semuanya berfungsi, Anda dapat mulai menambahkan fungsionalitas dan penyesuaian tambahan:

  • Anda dapat melihat daftar kasus penggunaan umum dengan kode contoh di halaman dokumentasi Contoh kode framework ekstensi Looker.

  • Lihat situs Komponen UI Looker untuk menggunakan library komponen kami dalam 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 bukan sebagai titik awal atau template sebenarnya. Sebaiknya Anda menggunakan generator ekstensi kami atau meng-clone salah satu contoh yang lebih mendasar 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.