1. Başlamadan önce
Bu codelab'de (1), Looker Kontrol Paneli Özetleme Uzantısı'nı yerel olarak ayarlayarak deneyebilir ve yerel olarak geliştirebilirsiniz. Ardından (2), Looker örneğinizdeki diğer Looker kullanıcılarının kullanabilmesi için uzantıyı üretime dağıtırsınız. Son olarak, (3) uzantının işlevselliğini hassas bir şekilde ayarlamak ve geliştirmek için ek adımları uygulayabilirsiniz. İsteğe bağlı olmayan tüm bölümler sırayla tamamlanmalıdır.
Looker Kontrol Paneli Özetleme Uzantısı'na genel bakış
Looker Kontrol Paneli Özetleme Uzantısı, işlevsel olarak Looker kontrol panelinizin verilerini Vertex AI'ın Gemini modeline gönderir. Ardından Gemini modeli, kontrol panelinizin verilerinin bir özetini ve sonraki adımlarla ilgili önerileri döndürür. Uzantı, özeti ve sonraki adımları kontrol panelinizde bir kutu olarak gösterir ve kontrol paneli deneyiminize entegre olur. Ayrıca uzantı, özeti ve sonraki adımları Slack veya Google Chat'e aktarabilir. Uzantı, Vertex AI'ın Gemini modeline veri gönderip almak için websocket arka uç hizmetiyle birlikte React ön uç uygulamasından yararlanır.
Ön koşullar
- Node geliştirme, Docker ve Terraform hakkında temel düzeyde bilgi
- Looker LookML projesi oluşturma hakkında bilgi sahibi olma
Neler öğreneceksiniz?
- Uzantı yerel olarak nasıl kurulur ve geliştirilir?
- Looker örneğinizdeki diğer Looker kullanıcılarının kullanabilmesi için uzantıyı üretim kanalına dağıtma
- İsteğe bağlı olarak uzantının performansında ince ayar yapma ve işlevselliğini genişletme.
- Üretimde dağıtılan uzantınızı yönetme
Gerekenler
- Looker Original lisansı, etkin Looker Core deneme sürümü veya etkin Looker Core lisansı aracılığıyla bir Looker örneği.
- Looker örneğinizde
develop
vedeploy
izinlerine sahip olmanız gerekir. - Uzantıyla denemek istediğiniz kontrol panelini düzenleme izinleri.
- Looker örneğinizden bir Looker API anahtarı.
- Faturalandırmanın etkin olduğu bir Google Cloud projesi.
- Projede Cloud Run API, Vertex AI API ve Artifact Registry API etkin.
- gcloud CLI'ın yüklü olduğu yerel ortama erişim. Kod laboratuvarının adımları, Linux tarzı bir ortamda çalışıldığını varsayar.
2. Yerel geliştirme için arka uç ayarlama
Bu bölümde, denemeniz ve yerel olarak geliştirmeniz için websocket arka uç hizmetini ayarlayacaksınız. Hizmetin Vertex AI'a erişimi olur.
- Yerel ortamınıza Node 18 veya sonraki bir sürümü yükleyin. Node'u yüklemek için bu talimatları uygulayın.
- Uzantı deposunu yerel ana dizininize klonlayın ve deponun kök dizine gidin. Bu codelab için tüm kod örnekleri, klonlanan deponuzun yerel ana dizininizde olduğunu varsayar.
cd ~
git clone git@github.com:looker-open-source/dashboard-summarization.git
- Klonlanan deponun kök dizinine gidin ve bu codelab'in sonraki bölümlerinde ortam değişkenleri ayarlayabilmeniz için
.env.example
dosyasını.env
olarak yeniden adlandırın.
cd ~/dashboard-summarization
mv .env.example .env
- Klonlanan deponun web yuvası arka ucunun
src
dizinine gidin. Bu dizin, sunucunun kaynak kodunu içerir.
cd ~/dashboard-summarization/websocket-service/src
- Hizmetin bağımlılıklarını NPM ile yükleyin.
npm install
looker-example.ini
dosyasınılooker.ini
olarak yeniden adlandırın.
mv looker-example.ini looker.ini
- looker.ini dosyasında şu güncellemeyi yapın:
client_id
veclient_secret
değerlerini Looker API anahtarınızdakilerle değiştirin.- Looker örneğinizin URL'sini içeren
base_url
.https://<YOUR_LOOKER_URL_MINUS_PROTOCOL>:19999
biçiminde olmalıdır. - Looker örneğinizin URL'sinin ana makinesini içeren parantez içindeki metin (bölüm başlığı).
Örneğin, istemci kimliğiniz ABC123
, istemci gizli anahtarınız XYZ789
ve Looker örneğinizin URL'si https://mycompany.cloud.looker.com
ise looker.ini
dosyanız tam olarak şu şekilde görünür:
[mycompany]
base_url=https://mycompany.cloud.looker.com:19999
client_id=ABC123
client_secret=XYZ789
verify_ssl=true
- Google Cloud proje kimliğinizi belirleyin ve
PROJECT
ortam değişkeninize ayarlayın.YOUR_PROJECT_ID
yerine proje kimliğinizi yazın.
export PROJECT="YOUR_PROJECT_ID"
- Vertex AI, burada listelenen birçok bölgede Gemini modelini sağlar. Yerel arka ucunuzun Vertex AI'ın Gemini modelinden veri gönderip alacağı bölgeyi belirleyin.
REGION
ortam değişkeninizde bölgeyi ayarlayın.YOUR_VERTEX_REGION
değerini bölgenizle (ör.us-central1
) değiştirin.
export REGION="YOUR_VERTEX_REGION"
- Ardından yerel hizmetinizi başlatın.
npm start
- Yerel websocket arka uç hizmetiniz http://localhost:5000 üzerinde çalışır.
Yerel ortamınızda websocket arka uç hizmetini ayarlama işlemini tamamladınız.
Bu hizmet, kullanıcı arayüzü uzantınız ile Vertex AI'ın Gemini modeli arasında bir arayüz görevi görür. Hizmet, Looker'dan sorgulanan verilerle ön uç uzantınızdan kontrol paneli ve LookML verilerini alır ve Vertex AI'ın Gemini modelini ister. Ardından hizmet, Gemini'nin yanıtını kontrol panelinizde gösterilecek şekilde ön uç uzantısına aktarır.
Arka uç hizmetinin kaynak kodunda da değişiklik yapabilirsiniz. Önce hizmet sürecini durdurmanız, kod değişiklikleri yapmanız ve ardından npm start
'ü tekrar çalıştırmanız gerekir.
3. Yerel geliştirme için ön uç ayarlama
Bu bölümde, ön uç uzantısını denemek ve yerel olarak geliştirmek için ayarlayacaksınız.
- Önceki adımlardakiyle aynı yerel ortamda, klonlanmış deponuzun kök dizinine gidin ve ön uç sunucunun ön uçunuz için bağımlılıkları yükleyin.
cd ~/dashboard-summarization
npm install
- Yerel ön uç geliştirme sunucunuzu başlatma
npm run develop
- Yerel ön uç sunucunuz artık uzantının JavaScript'ini http://localhost:8080/bundle.js adresinde sunmaktadır.
- Bir web tarayıcısı açıp Looker örneğinize giriş yapın.
- Boş bir LookML projesi oluşturmak için bu talimatları uygulayın. Proje kontrol paneli özetleme işlemini adlandırın. Artık boş LookML projesi, mevcut tarayıcı sekmenizdeki Looker IDE'de otomatik olarak açılacaktır.
- LookML projesinin kökünde bir proje manifest dosyası oluşturun. Dosya manifest.lkml olarak adlandırılır. Bunu nasıl yapacağınızı bilmiyorsanız LookML projesine dosya eklemeyle ilgili bu talimatları uygulayın.
- Yeni manifest.lkml dosyasının içeriğini, kapalı deponuzun kök dizininde bulunan manifest.lkml dosyasının içeriğiyle değiştirin. Değişiklikleri dosyaya kaydetmek için sağ üst köşedeki "Değişiklikleri Kaydet" düğmesini seçin.
- Ayrı bir tarayıcı sekmesinde, Looker örneğinizdeki veritabanı bağlantılarının listesine gidin. Bunu nasıl yapacağınızı bilmiyorsanız bu talimatları uygulayın.
- Bir Looker veritabanı bağlantısının adını seçin. Hangi bağlantıyı seçtiğinizin bir önemi yoktur. Veritabanı bağlantılarını görme izniniz yoksa Looker yöneticinizle iletişime geçerek bir Looker veritabanı bağlantısının adını isteyin.
- LookML projeniz Looker IDE'de açılmışken tarayıcı sekmesine geri dönün. LookML projenizde bir model dosyası oluşturun ve dosyayı dashboard-summarization olarak adlandırın.
- dashboard-summarization.model.lkml dosyanızın içeriğini aşağıdaki kod örneğiyle değiştirin. Çift tırnak içindeki dizeyi 9. adımda seçtiğiniz veritabanı bağlantısı adıyla değiştirdiğinizden emin olun. Dosyadaki değişiklikleri kaydedin.
connection: "<YOUR_CONNECTION_NAME>"
- Projenizin kaydedileceği bir depo oluşturun. Sağ üstteki "Git'i Yapılandır" düğmesini seçin. "Bunun yerine sade depo oluştur"u seçin. "Depo Oluştur"u seçin.
- Artık LookML proje dosyalarınızı depolayabileceğiniz temel bir sade deponuz var. "Projeye dön"ü seçerek veya manuel olarak geri giderek Looker IDE'de projeye geri dönün.
- Sağ üst köşedeki "LookML'yi Doğrula" düğmesini seçin. Düğme, "Değişiklikleri kaydet ve aktar" olarak değişir.
- "Değişiklikleri gönder ve yap" düğmesini seçin. İstediğiniz herhangi bir mesajı ekleyin ve "Kaydet"i seçin.
- Looker IDE'nin sağ üst köşesindeki "Üretime dağıt"ı seçin. Artık bu uzantıyı Looker örneğinize eklediniz.
- Uzantıyı eklemek istediğiniz Looker kontrol paneline gidin.
- Kontrol panelinize uzantı karosu eklemek için talimatları uygulayın. Yeni uzantınızı kontrol panelinize karo olarak ekleyin.
- Daha önce ayarladığınız yerel websocket arka uç hizmetinizin çalıştığından emin olun.
Tebrikler! Artık kontrol panelinizde Looker Kontrol Paneli Özetleme Uzantısı'nı deneyebilirsiniz. Uzantınız, kontrol panelinizin meta verilerini yerel websocket arka uç hizmetinize gönderir ve arka uç hizmetinizin Gemini çıkışını doğrudan kontrol paneli uzantınızın içinde gösterir.
Yerel ön uç sunucunuz çalışırken uzantının JavaScript kaynak kodunda değişiklik yapabilirsiniz. Sunucu, değişiklikleri otomatik olarak derleyip sunar. Değişiklikleri görmek için uzantınızı veya kontrol paneli sayfanızı yeniden yüklemeniz gerekir.
4. Arka ucu üretime dağıtma
Bu bölümde, websocket arka uç hizmetini, Looker örneğinizdeki herhangi bir kontrol panelinde kontrol paneli özet uzantınızın tüm örneklerini sunacak şekilde ayarlayacaksınız. Bu sayede diğer Looker kullanıcıları, kendi arka uç hizmetlerini ayarlamak zorunda kalmadan uzantıyı kendi kontrol panellerinde deneyebilir. Bu adımlarda, daha önce aynı yerel ortamda yerel geliştirme için arka ucu başarıyla dağıttığınız varsayılır.
- Sonraki adımlar için yerel ortamınızda proje kimliğinizi kullanarak bir Uygulama Varsayılan Kimlik Bilgisi oluşturmak üzere bu talimatları uygulayın.
- Arka uç hizmetinizin Docker görüntüleri için bir Artifact Registry deposu oluşturun.
YOUR_REGION
kısmını deponuzun olmasını istediğiniz bölgeyle değiştirin.
gcloud artifacts repositories create dashboard-summarization-repo \
--repository-format=docker \
--location=YOUR_REGION \
- Klonlanan deponuzun web yuvası arka ucunun
src
dizinine gidin.
cd ~/dashboard-summarization/websocket-service/src
cloudbuild.yaml
dosyasını düzenleyerek tümYOUR_REGION
veYOUR_PROJECT_ID
örneklerini bölgeniz ve proje kimliğinizle değiştirin. Dosyadaki değişiklikleri kaydedin.- Cloud Build'i kullanarak arka uç hizmeti Docker görüntüsünü derleyecek ve yeni oluşturduğunuz Artifact Registry deposuna gönderecek bir derleme gönderin.
YOUR_REGION
kısmını, Cloud Build hizmetini kullanmak istediğiniz bölgeyle değiştirin.
gcloud builds submit --region=YOUR_REGION --config cloudbuild.yaml
- Yeni oluşturduğunuz Docker görüntüsü URL'sinin
YOUR_REGION-docker.pkg.dev/YOUR_PROJECT_ID/dashboard-summarization-repo/websocketserviceimage:latest
adresinde olduğunu unutmayın.YOUR_PROJECT_ID
yerine proje kimliğinizi yazın.YOUR_REGION
yerine, Artifact Registry deponuzu oluşturmak için kullandığınız 2. adımdaki bölgeyi yazın. - Klonlanan deponuzdaki
websocket-service/terraform
dizinine gidin.
cd ~/dashboard-summarization/websocket-service/terraform
- Websocket arka uç hizmetinizi Google Cloud Run'ın hangi konumunda çalıştırmak istediğinizi belirleyin. Bu konumlar arasından seçim yapın.
- Değişkenler.tf dosyasını düzenleyin ve
YOUR_PROJECT_ID
ileYOUR_DOCKER_IMAGE_URL
değerlerini uygun değerlerle değiştirin. Docker görüntü URL'niz için 6. adımı kontrol edin.YOUR_REGION
değerini, önceki 8. adımda seçtiğiniz bölgeyle değiştirin. Dosyadaki değişiklikleri kaydedin. - Terraform'u kullanarak arka uç hizmetinizin kullanacağı kaynakları dağıtın.
terraform init
terraform plan
terraform apply
- Bir sonraki bölüm için dağıtılan Cloud Run URL uç noktasını kaydedin.
Tebrikler! Websocket arka uç hizmetinizi dağıttınız ve şimdi Google Cloud Run'da çalışıyor. Artık Looker Kontrol Paneli Özetleme uzantınızın tüm örnekleri arka uç hizmetinizle iletişim kurabilir. Cloud Run'da her zaman websocket arka uç hizmetinizin en az bir örneğinin çalışır durumda olmasını öneririz. Arka uç hizmetinizin kalıcılığı, websocket arka uç hizmetiniz ile uzantı ön ucunuz arasındaki veri akışının bütünlüğünü korur ve her bir kullanıcının uzantınızı kullanırken oturumunun korunmasına yardımcı olur.
5. Ön ucu üretime dağıtma
Bu son bölümde, uzantı ön ucunu Looker örneğinizdeki tüm Looker kullanıcılarına sunmak için dağıtmanın son adımlarını yapacaksınız.
- Klonlanan deponuzun kök dizinine gidin.
cd ~/dashboard-summarization
- .
env
dosyasını açın.YOUR_CLOUD_RUN_URL
değerini, önceki bölümde yer alan Cloud Run URL Uç Noktası ile değiştirin. Dosya değişikliklerinizi kaydedin. Bu işlem, üretim uzantısı ön ucunu Cloud Run'da çalışan websocket arka uç hizmetinize yönlendirir. - Uzantının JavaScript'ini oluşturun.
bundle.js
dosyası ve diğer dosyaları içeren birdist
dizini otomatik olarak oluşturulur.
npm run build
- Bir web tarayıcısı açıp Looker örneğinize giriş yapın. Soldaki gezinme menüsünü açın ve alt kısımdaki "Geliştirme Modu" açma/kapatma düğmesini etkinleştirin.
- Soldaki yan gezinme menüsü açıkken "Geliştir"i seçin, ardından aşağı kaydırarak uzantınızın LookML projesi olan "dashboard-summarization"ı seçin. Şu anda LookML projesi için Looker IDE'sinde olmalısınız.
- Önceden oluşturulmuş dist dizinindeki tüm dosyaları, "Dosya Tarayıcısı"nda projenin kök dizinine sürükleyip bırakın. Daha fazla yardıma ihtiyacınız olursa bu talimatları uygulayın.
- Looker IDE'de
manifest.lkml
dosyasını açın. Dosyanın içinde, satırı değiştirin
url: "http://localhost:8080/bundle.js"
ile
file: "bundle.js"
YOUR_CLOUD_RUN_URL
değerini, son bölümün sonundaki Cloud Run URL Uç Noktası ile değiştirin. Dosyada yapılan değişiklikleri kaydedin.
- Sağ üst köşedeki "LookML'yi Doğrula" düğmesini seçin. Düğme, "Değişiklikleri kaydet ve aktar" olarak değişir.
- "Değişiklikleri gönder ve yap" düğmesini seçin. İstediğiniz herhangi bir mesajı ekleyin ve "Kaydet"i seçin.
- Looker IDE'nin sağ üst köşesindeki "Üretime dağıt"ı seçin.
Tebrikler! Artık Looker örneğinizdeki tüm Looker kullanıcılarının kontrol panellerine Looker Kontrol Paneli Özetleme Uzantısı'nı eklemelerini etkinleştirdiniz. Diğer Looker kullanıcıları uzantıyı kullandıkça uzantının tüm örnekleri, Google Cloud Run'da çalışan dağıtılmış websocket arka uç hizmetinize çağrı yapar.
Kaynak kodunda değişiklik yaparsanız şunları yapmanız gerektiğini unutmayın:
- Uzantınızın JavaScript'ini tekrar oluşturun
- LookML projesine eklediğiniz, oluşturulan dosyaları
dist
dizininden yeni oluşturulan dosyalarla değiştirin. - LookML projesi değişikliklerini doğrulayın, kaydedin ve üretime dağıtın
Looker Kontrol Paneli Özetleme Uzantısı'nı deneyin. Uzantıya katkıda bulunmanızı ve Looker topluluğunun ihtiyaçlarını daha iyi karşılamasına yardımcı olmanızı öneririz. Depoda pull isteği oluşturabilirsiniz.
Slack/Google Chat dışa aktarma özelliğini etkinleştirmek, Gemini'nin özetlerinde ve sonraki adımlarında ince ayar yapmak ve Gemini günlük kaydını ayarlamak için aşağıdaki isteğe bağlı bölümlere göz atın.
6. [İsteğe bağlı] Dışa aktarma özelliklerini ayarlayın
Siz ve Looker kullanıcılarınız Looker gösterge tablosu özetleme uzantısını denediniz. Şimdi uzantının analizini daha geniş bir kitleyle paylaşın. Uzantınızın Google Chat veya Slack'e özetleri ve sonraki adımları göndermesini sağlamak için bu bölümü uygulayın. Codelab'in bu bölümüne devam etmek için OAuth kurulumu hakkında bilgi sahibi olmanız gerekir.
Google Chat dışa aktarmayı etkinleştirme
- Google Cloud projenizde Chat API'yi etkinleştirin.
- Google Workspace OAuth kurulum talimatlarının 1. adımını uygulayın. Kapsamlar için
spaces.messages.create
eklemeniz gerekir. - Google Workspace OAuth kurulum talimatlarının 2. adımını uygulayın. Looker örneğinizin URL'sini "Yetkilendirilmiş JavaScript kaynakları" bölümüne URI olarak ekleyin (ör.
https://mycompany.cloud.looker.com
). Oluşturulan Client-ID'yi not edin. - Özetleri dışa aktarmak istediğiniz Google Chat alanının kimliğini belirleyin. Nasıl yapıldığını bilmiyorsanız bu talimatları uygulayın.
- .
env
dosyası oluşturun.YOUR_GOOGLE_CLIENT_ID
yerine müşteri kimliğini yazın.YOUR_GOOGLE_SPACE_ID
kısmını Google Chat alanı kimliğiyle değiştirin. Dosya değişikliklerinizi kaydedin. Bu işlem, uzantınızın ön ucunu, analizlerini istediğiniz Google Chat alanına gönderebilecek şekilde yapılandırır. - Uzantı ön ucunu yerel olarak çalıştırıyorsanız uzantınızı yeniden derleyin. Aksi takdirde, uzantınızın ön ucunu dağıtıyorsanız uzantınızın ön ucunu yeniden dağıtın.
Slack dışa aktarma özelliğini etkinleştirme
- OAuth Uygulaması oluşturmak için resmi Slack geliştirici dokümanlarındaki 1. ve 2. adımları uygulayın. Kapsamlar için
chat:write
vechannels:read
öğelerini eklemeniz gerekir. Oluşturulan istemci kimliğini ve istemci gizli anahtarını not edin. - Özetleri dışa aktarmak istediğiniz Slack kanalının kimliğini belirleyin.
- .
env
dosyası oluşturun.YOUR_SLACK_CLIENT_ID
yerine müşteri kimliğini yazın.YOUR_SLACK_CLIENT_SECRET
değerini istemci sırrıyla değiştirin.YOUR_SLACK_CHANNEL_ID
değerini kanal kimliğiyle değiştirin. Dosya değişikliklerinizi kaydedin. Bu işlem, uzantınızın ön ucunu, analizlerini istediğiniz Slack kanalına gönderebilecek şekilde yapılandırır. - Uzantınızın ön ucunu yerel olarak çalıştırıyorsanız uzantınızı yeniden oluşturun. Aksi takdirde, uzantınızın ön ucunu dağıtıyorsanız uzantınızın ön ucunu yeniden dağıtın.
Uzantınız artık özetlerini doğrudan Slack'e veya Google Chat'e aktarabilir. Uzantının yalnızca sabit kodlu belirli bir Google sohbet alanına veya Slack kanalına özet gönderebileceğini unutmayın. Başka OAuth kapsamları ekleyebilir ve özetlerin gönderileceği alanların ve kanalların listesini almak ve görüntülemek için kodu değiştirebilirsiniz.
7. [İsteğe bağlı] Özet ve sonraki adımlarda ince ayar yapma
Uzantı, kontrol panelindeki tüm meta veri ve sorgu verileriyle Gemini modeline istem gönderir. Kontrol paneline mümkün olduğunca fazla meta veri ve bağlam ekleyerek özetlerin ve belirleyici adımların doğruluğunu, ayrıntılarını ve derinliğini artırabilirsiniz. Uzantınızın parçası olduğu her kontrol paneli için bu adımları deneyin:
- Kontrol paneli ayrıntılarını kontrol paneline eklemek için bu talimatları uygulayın. Bu, LLM'nin kontrol panelinin genel bağlamını anlamasına yardımcı olur.
- Her bir kontrol paneli karosuna not eklemek için bu talimatları uygulayın. Bu, LLM'nin kontrol panelindeki her bir sorgunun bağlamını öğrenmesine yardımcı olur. Küçük bağlamsal notlar, oluşturulan özetlerde dikkate alınır.
Kontrol panellerinize ne kadar çok bilgi eklerseniz uzantının özetleri ve sonraki adımları da o kadar iyi olur. Gemini modeline istemde ek gösterge tablosu meta verileri eklemek için kodu değiştirebilirsiniz.
8. [İsteğe bağlı] Gemini modeli günlük kaydını ayarlama
Kullanıcı uzantıya bir kontrol paneli için özet oluşturmasını her söylediğinde uzantı, kontrol panelindeki her sorgu için Vertex AI'a bir çağrı yapar ve tüm özetlerin biçimlendirilmesi için son bir çağrı daha yapar. Vertex AI maliyetlerini ve trafiğini tahmin edip izleyebilmek için uzantınızın yaptığı Vertex AI çağrılarını günlüğe kaydetmek üzere bu bölümü uygulayın. Bu talimatları yalnızca websocket arka uç hizmetini dağıttıysanız uygulamalısınız.
- Dağıtılan websocket arka uç hizmetinizin Cloud Run konumunu belirleyin.
- Günlükleri BigQuery'ye yönlendirecek bir günlük havuzu oluşturmak için bu talimatları uygulayın. Hedef akış BigQuery olmalıdır. Dahil etme filtresini,
YOUR_CLOUD_RUN_LOCATION
yerine önceki adımın Cloud Run konumunun kullanıldığı aşağıdaki kod örneğiyle ayarlayın.
resource.type = "cloud_run_revision"
resource.labels.service_name = "websocket-service"
resource.labels.location = "YOUR_CLOUD_RUN_LOCATION"
severity>=DEFAULT
jsonPayload.component="dashboard-summarization-logs"
9. Tebrikler!
Looker Kontrol Paneli Özetleme uzantısını, denemeniz için yerel olarak ayarladınız. Diğer kullanıcıların da deneyebilmesi için uzantıyı Google Cloud'a dağıttınız. Siz ve diğer kullanıcılar, Gemini destekli özetlere ve sonraki adımlara doğrudan kontrol panellerinizden erişebilirsiniz.
10. Sırada ne var?
- Uzantınızın kod tabanında değişiklik yaparak işlevlerini kuruluşunuzun ihtiyaçlarına göre özelleştirin.
- Uzantının deposuna katkıda bulunun ve siz ve Looker topluluğunuz için uzantıyı iyileştirin.
- Looker deneyiminizi geliştirmek için kendi uzantılarınızı geliştirin.
- Kontrol paneli deneyiminizi iyileştirmek için uzantılarınızı kontrol paneline kart olarak entegre edin.