Google Chat uygulama geliştiricisi olarak şunları yapmak için kodda hata ayıklamanız gerekebilir: veya karmaşık sorunları giderebilirsiniz. Chat uygulamalarında hata ayıklama uygulamanızın mimarisine, ekibinizin hangi sisteme uygulamanızın nasıl dağıtıldığı ve tercihleriniz.
Bu sayfada, Ngrok eklentisidir. Bu birleşik giriş platformu, yerel site bağlantılarını test etmek için ortamları için değerlidir. Bu kılavuzda, yerel bir uzaktaki bir ortamda çalışarak sorunları gidermenize yardımcı olabilir.
Yerel geliştirme ortamından hata ayıkla
Bu bölümde, yerel ortamınızda yürütülür.
Şekil 1. Yerel geliştirme ortamında hata ayıklayın.
Atölye
Node.js
Python
Java
Ön koşullar
Node.js
- Son
node
venpm
sürümleri yüklendi kullandığınızdan emin olun. nodemon
uygulamasının son sürümü yerel cihazınıza yüklü ortamda, otomatik yeniden yükleme amacıyla kullanılır:npm install -g nodemon
Şu uygulama için yapılandırılmış bir HTTP Chat uygulaması: bahsedeceğim. Web sitemiz g.co/newsinitiative/labs üzerinden Ön koşullar, ve uygulamayı Google'da yayınlayın Sohbet Hızlı başlangıç kılavuzu. Tek farkları, Uygulama adı'nı
Debug App
ve Uygulama URL'sinihttp://example.com
gibi bir URL'ye ekleyin.Yerel ortamınızda hata ayıklama yapabilen bir IDE (Entegre Geliştirme Ortamı) kurulumu. Biz
Visual Studio Code
IDE ve varsayılanı hata ayıklama özellikleri bu kılavuzu inceleyebilirsiniz.Git
. yüklü kullandığınızdan emin olun.ngrok
hesabı.
Python
python3
uygulamasının son sürümü yüklü kullandığınızdan emin olun.- En son
pip
sürümü vevirtualenv
, Python paketlerini ve sanal makinelerini yönetmek için kullanılır ortamlara öncelik verin. - Şu uygulama için yapılandırılmış bir HTTP Chat uygulaması:
bahsedeceğim. Web sitemiz g.co/newsinitiative/labs
üzerinden
Ön koşullar,
ve uygulamayı Google'da yayınlayın
Sohbet
Hızlı başlangıç kılavuzu. Tek
farkları, Uygulama adı'nı
Debug App
ve Uygulama URL'sinihttp://example.com
gibi bir URL'ye ekleyin. - Yerel ortamınızda hata ayıklama yapabilen bir IDE (Entegre Geliştirme Ortamı) kurulumu. Biz
Visual Studio Code
IDE ve varsayılanı hata ayıklama özellikleri bu kılavuzu inceleyebilirsiniz. Git
. yüklü kullandığınızdan emin olun.ngrok
hesabı.gcloud
uygulamasının son sürümü yüklü ve başlatıldığına yardımcı olur.
Java
Java SE 11's JDK
uygulamasının en son kararlı sürümü yerel bilgisayarınızda yüklü bahsedeceğim.Apache Maven
uygulamasının son sürümü yerel ortamınızda yüklüyse Java projelerini yönetmek için kullanılır.- Şu uygulama için yapılandırılmış bir HTTP Chat uygulaması:
bahsedeceğim. Web sitemiz g.co/newsinitiative/labs
üzerinden
Ön koşullar,
ve uygulamayı Google'da yayınlayın
Sohbet
Hızlı başlangıç kılavuzu. Tek
farkları, Uygulama adı'nı
Debug App
ve Uygulama URL'sinihttp://example.com
gibi bir URL'ye ekleyin. - Yerel ortamınızda hata ayıklama yapabilen bir IDE (Entegre Geliştirme Ortamı) kurulumu. Biz
Visual Studio Code
IDE ve varsayılanı hata ayıklama özellikleri bu kılavuzu inceleyebilirsiniz. Git
. yüklü kullandığınızdan emin olun.ngrok
hesabı.gcloud
uygulamasının son sürümü yüklü ve başlatıldığına yardımcı olur.
Yerel ana makine hizmetini herkese açık hale getir
Yerel ortamınızı internete bağlamanız gerekir. Böylece
Chat uygulaması bu verilere erişebilir. ngrok
uygulaması kullanılıyor
özelliğini kullanabilirsiniz.
- Yerel ortamınızdaki bir tarayıcıda
ngrok
hesabınızda oturum açın. - Uygulamayı yükleyin ve
authtoken
cihazınızı yerel bir ortamdan bahsetmek istiyorum. - Şurada bir statik alan oluşturun:
ngrok
hesabı, referans:NGROK_STATIC_DOMAIN
inceleyin.
Chat uygulamasını yapılandırma
Chat uygulamasını, tüm HTTP isteklerini statik alanınız.
Google Cloud konsolunda Google Chat API sayfasını açın:
Configuration (Yapılandırma) sekmesini tıklayın.
Etkileşimli özellikler'e gidin > Bağlantı ayarları ve değeri belirleme Uygulama URL'si metin alanını kullanarak şunları yapabilirsiniz:
https://NGROK_STATIC_DOMAIN
NGROK_STATIC_DOMAIN
kısmını şu statik alanla değiştirin:ngrok
hesabınız.Kaydet'i tıklayın.
Şekil 2. Chat uygulaması, tüm HTTP isteklerini gönderir
anahtar/değer çiftini ekleyin. ngrok
kamu hizmeti
Chat uygulaması ve yürütülen uygulama kodu
yerel olarak.
Chat uygulamasını test etme
Uygulamanızı yerel olarak dağıtabilir, yapılandırabilir, test edebilir, hata ayıklayabilir ve otomatik olarak yeniden yükleyebilirsiniz Chat uygulaması.
örneğindeki Çerçeve'yi inceleyin.Node.js
GitHub'dan
googleworkspace/google-chat-samples
deposunu klonlama uygulamanızın kodunu içerir. yürütme:git clone https://github.com/googleworkspace/google-chat-samples.git
Yerel ortamınızda yüklü
Visual Studio Code
IDE'den şunları yapın:- Yeni bir pencerede klasörü açın
google-chat-samples/node/basic-app
İki ekleyerek uygulamayı otomatik yeniden yükleme hata ayıklaması için yapılandırın
package.json
dosyasındaki komut dosyaları:{ ... "scripts": { ... "debug": "node --inspect index.js", "debug-watch": "nodemon --watch ./ --exec npm run debug" } ... }
Kök dizinden uygulamayı yükleyin:
npm install
Debug Watch
adında bir lansman oluşturup yapılandırarakdebug-watch
komut dosyasını kullanarak.vscode/launch.json
kök dizin:{ "version": "0.2.0", "configurations": [{ "type": "node", "request": "launch", "name": "Debug Watch", "cwd": "${workspaceRoot}", "runtimeExecutable": "npm", "runtimeArgs": ["run-script", "debug-watch"] }] }
HTTP isteğinin işlenmesini duraklatan ve
index.js
dosyasını açın ve çalışmaya ve hata ayıklama Daha önceDebug Watch
yapılandırması eklendi. Uygulama şu anda9000
bağlantı noktasında HTTP isteklerini çalıştırma ve dinleme.Şekil 3. Uygulama çalışıyor ve HTTP'yi dinliyor
9000
bağlantı noktasından istekler.
- Yeni bir pencerede klasörü açın
ngrok
uygulamasını yerel ortamınızda başlatın:ngrok http --domain=NGROK_STATIC_DOMAIN 9000
NGROK_STATIC_DOMAIN
kısmını şu statik alanla değiştirin:ngrok
hesabınız. Tüm istekler artık yerel sayfanıza yönlendiriliyor ortam ve uygulama tarafından kullanılan bağlantı noktası.4.Şekil
ngrok
sunucusunun çalıştırıldığı ve yönlendirildiği terminal.ngrok
tarafından, yerel ana bilgisayarınızda da bir web arayüzü başlatıldı uygulamasını bir tarayıcıda açarak tüm etkinlikleri izleyebilirsiniz.5. Şekil.
ngrok
uygulaması tarafından barındırılan web arayüzü hiç HTTP isteği gösterilmiyor.Chat uygulamanızı doğrudan göndererek test edin mesaj:
Google Chat'i açın.
Yeni sohbet'i
tıklayın.İletişim kutusunda Chat uygulaması.
Arama sonuçlarında Chat uygulamanızı bulun. Ekle'yi > tıklayın. Sohbet.
Doğrudan mesaj alanına
Hello
yazıpenter
tuşuna basın. Sizin Chat uygulaması, yardımcı olabilir.
Yerel ortamınızdaki
Visual Studio Code
içinde şunları görebilirsiniz: yürütme, ayarlanan kesme noktasında duraklatılır.6. Şekil. Yürütme, ayarlanan kesme noktasında duraklatıldı.
Yürütmeyi
Visual Studio Code
hata ayıklayıcısından devam ettirdiğinizde Google Chat, Chat uygulamasında zaman aşımına uğramadan önce yanıt:Your message : Hello
.HTTP istek ve yanıt günlüklerini web arayüzünden kontrol edebilirsiniz yerel ortamınızdaki
ngrok
uygulaması tarafından barındırılır.7.Şekil Search Ads 360'ın barındırdığı web arayüzünden HTTP isteği
ngrok
uygulaması.Uygulama davranışını değiştirmek için
Your message
öğesini şununla değiştirin:index.json
öğesininHere was your message
satır içi35
. Kaydettiğinizde dosyayı yüklemeye çalışırsanıznodemon
, uygulamayı kaynak kodu güncellendi veVisual Studio Code
hata ayıklama modunda kaldı.8. Şekil. Uygulama çalışıyor ve HTTP isteklerini dinliyor kod değişikliği yüklenmiş olarak
9000
bağlantı noktasında.Bu kez alanda ikinci bir mesaj (
Hello
) göndermek yerine tarafından barındırılan web arayüzünde günlüğe kaydedilen son HTTP isteğini yerel ortamınızdakingrok
uygulamasını seçin veReplay
'yi tıklayın. Chat uygulamanız, geçen sefer olduğu gibi yanıt vermiyor çünkü aktif olarak hata ayıklaması yapılıyor.Yürütmeyi
Visual Studio Code
hata ayıklayıcısından devam ettirdiğinizdengrok
uygulaması tarafından barındırılan web arayüzünden uygulamanın yanıt oluşturduğu yerel ortamınızıHere was your message : Hello
mesajının güncellenmiş versiyonu
Python
Uygulama Varsayılanı için kullanılacak yeni kullanıcı kimlik bilgileri edinin Kimlik bilgileri:
gcloud config set project PROJECT_ID
gcloud auth application-default login
PROJECT_ID
değerini şununla değiştirin: proje kimliği Cloud projesinin temelini oluşturur.GitHub'dan
googleworkspace/google-chat-samples
deposunu klonlama eklediğinizde, uygulama kodunu içerir:git clone https://github.com/googleworkspace/google-chat-samples.git
Yerel ortamınızda yüklü
Visual Studio Code
IDE'den şunları yapın:- Yeni bir pencerede klasörü açın
google-chat-samples/python/avatar-app
Python
env
için yeni bir sanal ortam oluşturun ve bu ortamı etkinleştirin:virtualenv env
source env/bin/activate
Sanal ortamda
pip
kullanarak tüm proje bağımlılıklarını yükleyin ortam:pip install -r requirements.txt
Kök dizinde
.vscode/launch.json
dosyasını oluşturun ve uygulamayı tetikleyenDebug Watch
adlı bir başlatma yapılandırması yapılandır hata ayıklama modunda9000
bağlantı noktasındakifunctions-framework
modülündenenv
sanal ortamında:{ "version": "0.2.0", "configurations": [{ "type": "python", "request": "launch", "name": "Debug Watch", "python": "${workspaceFolder}/env/bin/python3", "module": "functions_framework", "args": [ "--target", "avatar_app", "--port", "9000", "--debug" ] }] }
HTTP isteğinin işlenmesini duraklatan ve
main.py
dosyasını açın ve çalışmaya ve hata ayıklama Daha önceDebug Watch
yapılandırması eklendi. Uygulama şu anda9000
bağlantı noktasında HTTP isteklerini çalıştırma ve dinleme.Şekil 3. Uygulama çalışıyor ve HTTP'yi dinliyor
9000
bağlantı noktasından istekler.
- Yeni bir pencerede klasörü açın
ngrok
uygulamasını yerel ortamınızda başlatın:ngrok http --domain=NGROK_STATIC_DOMAIN 9000
NGROK_STATIC_DOMAIN
kısmını şu statik alanla değiştirin:ngrok
hesabınız. Tüm istekler artık yerel sayfanıza yönlendiriliyor ortam ve uygulama tarafından kullanılan bağlantı noktası.4.Şekil
ngrok
sunucusunun çalıştırıldığı ve yönlendirildiği terminal.ngrok
tarafından, yerel ana bilgisayarınızda da bir web arayüzü başlatıldı uygulamasını bir tarayıcıda açarak tüm etkinlikleri izleyebilirsiniz.5. Şekil.
ngrok
uygulaması tarafından barındırılan web arayüzü hiç HTTP isteği gösterilmiyor.Chat uygulamanızı doğrudan göndererek test edin mesaj:
Google Chat'i açın.
Yeni sohbet'i
tıklayın.İletişim kutusunda Chat uygulaması.
Arama sonuçlarında Chat uygulamanızı bulun. Ekle'yi > tıklayın. Sohbet.
Doğrudan mesaj alanına
Hey!
yazıpenter
tuşuna basın. Sizin Chat uygulaması şu anda yanıt vermiyor yardımcı olabilir.
Yerel ortamınızdaki
Visual Studio Code
içinde şunları görebilirsiniz: yürütme, ayarlanan kesme noktasında duraklatılır.6. Şekil. Yürütme, ayarlanan kesme noktasında duraklatıldı.
Yürütmeyi
Visual Studio Code
hata ayıklayıcısından devam ettirdiğinizde Google Chat, Chat uygulamasında zaman aşımına uğramadan önce içeren bir e-posta alırsınız.HTTP istek ve yanıt günlüklerini web arayüzünden kontrol edebilirsiniz yerel ortamınızdaki
ngrok
uygulaması tarafından barındırılır.7.Şekil Search Ads 360'ın barındırdığı web arayüzünden HTTP isteği
ngrok
uygulaması.Uygulama davranışını değiştirmek için
Hello
öğesiniHey
satır içi ile değiştirinmain.py
dosyasından51
. Dosyayı kaydettiğinizdeVisual Studio Code
uygulamayı, güncellenmiş kaynak koduyla otomatik olarak yeniden yükler ve hata ayıklama modunda kalır.8. Şekil. Uygulama çalışıyor ve HTTP isteklerini dinliyor kod değişikliği yüklenmiş olarak
9000
bağlantı noktasında.Bu kez alanda ikinci bir mesaj (
Hey!
) göndermek yerine tarafından barındırılan web arayüzünde günlüğe kaydedilen son HTTP isteğini yerel ortamınızdakingrok
uygulamasını seçin veReplay
'yi tıklayın. Chat uygulamanız geçen sefer olduğu gibi yanıt vermiyor çünkü aktif olarak hata ayıklaması yapılıyor.Yürütmeyi
Visual Studio Code
hata ayıklayıcısından devam ettirdiğinizdengrok
uygulaması tarafından barındırılan web arayüzünden uygulamanın yanıt oluşturduğu yerel ortamınızı mesajın güncellenmiş sürümünü gösterir.
Java
Uygulama Varsayılanı için kullanılacak yeni kullanıcı kimlik bilgileri edinin Kimlik bilgileri:
gcloud config set project PROJECT_ID
gcloud auth application-default login
PROJECT_ID
değerini şununla değiştirin: proje kimliği Cloud projesinin temelini oluşturur.GitHub'dan
googleworkspace/google-chat-samples
deposunu klonlama yerel ortamınızda şu uygulama kodunu içerir:git clone https://github.com/googleworkspace/google-chat-samples.git
Yerel ortamınızda yüklü
Visual Studio Code
IDE'den şunları yapın:- Yeni bir pencerede klasörü açın
google-chat-samples/java/avatar-app
Maven projesini,
App
uygulamasını şurada çalıştıracak şekilde yapılandırın: Cloud Functions Çerçevesi derlemesini ekleyerek yerel olarak9000
bağlantı noktasınıpom.xml
dosyasındakifunction-maven-plugin
eklentisini kullanın:... <plugin> <groupId>com.google.cloud.functions</groupId> <artifactId>function-maven-plugin</artifactId> <version>0.11.0</version> <configuration> <functionTarget>App</functionTarget> <port>9000</port> </configuration> </plugin> ...
Artık hata ayıklama modunda yerel olarak başlatabilirsiniz:
mvnDebug function:run Preparing to execute Maven in debug mode Listening for transport dt_socket at address: 8000
Kök dizinde
.vscode/launch.json
dosyasını oluşturun ve şuna ekliRemote Debug Watch
adlı bir başlatma yapılandırması yapılandır: daha önce8000
bağlantı noktasıyla başlatılan uygulama:{ "version": "0.2.0", "configurations": [{ "type": "java", "request": "attach", "name": "Remote Debug Watch", "projectName": "http-function", "hostName": "localhost", "port": 8000 }] }
HTTP isteğinin işlenmesini duraklatan ve
App.java
dosyasını açın ve dosyaları hata ayıklama Daha önceRemote Debug Watch
yapılandırması eklendi. Uygulama şu anda9000
bağlantı noktasında HTTP isteklerini çalıştırıyor ve dinliyor.Şekil 3. Uygulama çalışırken ve HTTP'yi dinliyordur istekleri
9000
bağlantı noktası üzerinden gerçekleştirilir.
- Yeni bir pencerede klasörü açın
ngrok
uygulamasını yerel ortamınızda başlatın:ngrok http --domain=NGROK_STATIC_DOMAIN 9000
NGROK_STATIC_DOMAIN
kısmını şu statik alanla değiştirin:ngrok
hesabınız. Tüm istekler artık yerel sayfanıza yönlendiriliyor ortam ve uygulama tarafından kullanılan bağlantı noktası.4.Şekil
ngrok
sunucusunun çalıştırıldığı ve yönlendirildiği terminal.ngrok
tarafından, yerel ana bilgisayarınızda da bir web arayüzü başlatıldı uygulamasını bir tarayıcıda açarak tüm etkinlikleri izleyebilirsiniz.5. Şekil.
ngrok
uygulaması tarafından barındırılan web arayüzü hiç HTTP isteği gösterilmiyor.Chat uygulamanızı doğrudan göndererek test edin mesaj:
Google Chat'i açın.
Yeni sohbet'i
tıklayın.İletişim kutusunda Chat uygulaması.
Arama sonuçlarında Chat uygulamanızı bulun. Ekle'yi > tıklayın. Sohbet.
Doğrudan mesaj alanına
Hey!
yazıpenter
tuşuna basın. Sizin Chat uygulaması şu anda yanıt vermiyor yardımcı olabilir.
Yerel ortamınızdaki
Visual Studio Code
içinde şunları görebilirsiniz: yürütme, ayarlanan kesme noktasında duraklatılır.6. Şekil. Yürütme, ayarlanan kesme noktasında duraklatıldı.
Yürütmeyi
Visual Studio Code
hata ayıklayıcısından devam ettirdiğinizde Google Chat, Chat uygulamasında zaman aşımına uğramadan önce içeren bir e-posta alırsınız.HTTP istek ve yanıt günlüklerini web arayüzünden kontrol edebilirsiniz yerel ortamınızdaki
ngrok
uygulaması tarafından barındırılır.7.Şekil Search Ads 360'ın barındırdığı web arayüzünden HTTP isteği
ngrok
uygulaması.Uygulama davranışını değiştirmek için
Hello
öğesiniHey
satır içi ile değiştirinApp.java
dosyasının55
kadarını iptal edin,mvnDebug
işlemini yeniden başlatın ve yeniden eklemek ve yeniden başlatmak içinRemote Debug Watch
uygulamasını yeniden başlatın hata ayıklama sayfasına gidin.Bu kez alanda ikinci bir mesaj (
Hey!
) göndermek yerine tarafından barındırılan web arayüzünde günlüğe kaydedilen son HTTP isteğini yerel ortamınızdakingrok
uygulamasını seçin veReplay
'yi tıklayın. Chat uygulamanız, geçen sefer olduğu gibi yanıt vermiyor çünkü aktif olarak hata ayıklaması yapılıyor.Yürütmeyi
Visual Studio Code
hata ayıklayıcısından devam ettirdiğinizdengrok
uygulaması tarafından barındırılan web arayüzünden uygulamanın yanıt oluşturduğu yerel ortamınızı mesajın güncellenmiş sürümünü gösterir.
Uzak ortamdan hata ayıkla
Bu bölümde, uzak bir ortamda yürütülür.
9. Şekil. Uzak ortamdan hata ayıklayın.
Ön koşullar
- Chat uygulamanızla doğrudan mesaj alanı. Şunları yapabilirsiniz: Bölümdeki adımları takip edin Chat uygulamanızı test edin Hızlı başlangıç kılavuzuna göz atın ve Başlamak için Chat uygulamasını kullanın.
- Hata ayıklayıcıyla uzak ortamınızda çalışan uygulamanız
belirli bir bağlantı noktasında etkinse
REMOTE_DEBUG_PORT
inceleyin. - Yerel ortamınız uzak ortamınıza
ssh
. - Yerel ortamınızda hata ayıklama yapabilen bir IDE (Entegre Geliştirme Ortamı) kurulumu. Biz
Visual Studio Code
IDE ve varsayılanı hata ayıklama özellikleri kılavuzda bulabilirsiniz.
Yerel ve uzak ortamlarınızı bağlayın
Yerel ortamınızda hata ayıklama istemcisi başlatmak istediğiniz yerde bağlantı kurmak için bir SSH tüneli oluşturun:
ssh -L LOCAL_DEBUG_PORT:localhost:REMOTE_DEBUG_PORT REMOTE_USERNAME@REMOTE_ADDRESS
Aşağıdakini değiştirin:
LOCAL_DEBUG_PORT
: Yerel sayfanızdaki hata ayıklama bağlantı noktası bahsedeceğim.REMOTE_USERNAME
: Uzak ortamınızdaki kullanıcı adı.REMOTE_ADDRESS
: Uzak ortamınızın adresi.REMOTE_DEBUG_PORT
: Uzaktan kumandanızdaki hata ayıklama bağlantı noktası bahsedeceğim.
Yerel ortamınızdaki hata ayıklama bağlantı noktası artık uzak bir ortamda yapmak gerekir.
Hata ayıklamayı başlat
Yerel ortamınızda yüklü Visual Studio Code
IDE'den şunu yapın:
takip etmek için:
- Yeni bir pencerede uygulamanızın kaynak kodunu açın.
Kök dizinde
.vscode/launch.json
dosyasını oluşturun ve yerel sunucunuzdaki hata ayıklama bağlantı noktasına eklenenDebug Remote
adlı ortam:Node.js
{ "version": "0.2.0", "configurations": [{ "type": "node", "request": "attach", "name": "Debug Remote", "address": "127.0.0.1", "port": LOCAL_DEBUG_PORT }] }
Python
{ "version": "0.2.0", "configurations": [{ "type": "python", "request": "attach", "name": "Debug Remote", "connect": { "host": "127.0.0.1", "port": LOCAL_DEBUG_PORT } }] }
Java
{ "version": "0.2.0", "configurations": [{ "type": "java", "request": "attach", "name": "Debug Remote", "hostName": "127.0.0.1", "port": LOCAL_DEBUG_PORT }] }
LOCAL_DEBUG_PORT
yerine yardımcı olur.Uygulamanızın kaynak koduna HTTP isteğini duraklatan bir ayrılma noktası ekleyin. ve çalışmaya ve hata ayıklama işlemini daha önce eklenen
Debug Remote
yapılandırmasıyla yapın.
Chat uygulamanızın doğrudan mesaj alanına şunu yazın:
dokunun ve enter
tuşuna basın. Sizin
Chat uygulaması aktif olarak kullanıldığı için yanıt vermiyor
hatalar ayıklandı
Visual Studio Code
IDE'sinde.
İlgili konular
- Nasıl etkinleştireceğinizi ve query hata günlükleri
- Google Chat uygulamasını nasıl düzelteceğinizi öğrenin "Uygulama yanıt vermiyor", "Google Chat API" gibi hatalar "Kullanıcılar hariç tutulabilir" veya "Kullanıcılar hariç tutulabilir" bakın".
- Kart mesajları gibi kart hatalarını nasıl düzelteceğinizi öğrenin. iletişim kutuları ya da bağlantı önizlemelerinin beklendiği gibi oluşturulmaması veya çalışmaması.