Основываясь на результатах поиска, я создал проект и развернул несколько сервисов по этой ссылке: https://codelabs.developers.google.com/codelabs/cloud-app-engine-go/index.html?index=..%2F..index#0
После большой борьбы я мог развернуться, но теперь я даже не уверен, что приложениедействительно работает где-то, так как у меня вообще нет логов (я не нашел ни одного, по крайней мере, один, говорящий 2019-10-29T21:56:21.890Z App Engine UpdateService users-service john.doe@email.com .........
), я не нашел никаких метрик, и я не могу добраться до своего API ..
Мой API в настоящее время определяет 2 порта (gRPC & REST), поэтому я попытался пропинговать указанный адрес, добавив порт и без него, но безуспешно, так как не могу связаться со своим сервисом.
Ябуквально застрял прямо сейчас, я попробовал пару библиотек журналов, касающихся документации Google Cloud, но мне кажется, что ничего не работает, все остается пустым.
- "google.golang.org/appengine/log"
- "cloud.google.com/go/logging"
- "log"
Сегодня утром вернулся на работу, через час я попыталсяразверните мой сервис, и я получил 3 первых журнала
package main
import (
"log"
...
)
func main() {
log.Print("Users Service")
log.Println("Users Service")
log.Printf("Users Service")
log.Fatal("Heyyyyyyy")
//...
Я отредактировал свой код, чуть позже я добавил распечатку в мой основной и повторно развернул. Теперь у меня больше нет первых журналов .. Кажется, что иногда я могу войти, но потом он перестает работать на некоторое время и возвращается. Любая идея?
Я пытался обновить свою функцию печати, но безуспешно:
// appengineLog is actually the official package but I renamed it to use both "log" and "appengine/log"
// import appengineLog "google.golang.org/appengine/log"
func print(v string) {
log.Print(v)
log.Println(v)
log.Printf("%s", v)
ctx, _ := context.WithTimeout(context.Background(), 2*time.Second)
appengineLog.Infof(ctx, "%s", v)
appengineLog.Debugf(ctx, "%s", v)
appengineLog.Errorf(ctx, "%s", v)
appengineLog.Warningf(ctx, "%s", v)
appengineLog.Criticalf(ctx, "%s", v)
}
func main() {
print("test")
// ...
}
Странно, что я получаю 2019-10-29T21:56:21.890Z App Engine UpdateService users-service john.doe@email.com .........
сообщений для каждого развертывания, поэтому это означает (мне), что мой сервис развернут, поэтому он должен начать работу и распечатать. Печать находится на первой строке моего основного текста, поэтому ..
EDIT
Поскольку я перехожу из Monolith в Microservices, я выбрал Google Compute Engine, который кажется более подходящим для такого развертывания :)