亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

谷歌云函數默認環境變量未設置

谷歌云函數默認環境變量未設置

Go
飲歌長嘯 2022-06-06 16:04:58
在谷歌云功能上設置的默認環境變量是否有任何條件?我有以下代碼:func init() {    projectID := os.Getenv("GCP_PROJECT")    log.Printf("projectID: %s\n", projectID)    functionName := os.Getenv("FUNCTION_NAME")    log.Printf("functoinName: %s\n", functionName)    region := os.Getenv("FUNCTION_REGION")    log.Printf("region: %s\n", region)}并且值為空。即使我這樣做:func GameUpdate(ctx context.Context, e FirestoreEvent) error {    functionName := os.Getenv("FUNCTION_NAME")    log.Printf("functoinName: %s\n", functionName)}他們仍然是空的。根據文檔,我希望它們被設置并可用。但他們不是:|編輯:我使用 go 1.13 作為運行時,正如Armatorix提到的,這些環境變量在該運行時不可用......為什么我需要它們是編寫一個包裝器以便cloud.google.com/go/logging 能夠標記日志的嚴重性。我最終在我的標準輸出日志前面加上[INFO]/ [ERROR],并從中創建了一個標簽\[([A-Z]+)\].*。好處是我不必在我的函數中進行網絡調用來發送日志。仍然令人失望的是這些環境變量不可用。
查看完整描述

3 回答

?
動漫人物

TA貢獻1815條經驗 獲得超10個贊

所以我已經閱讀了相同的文檔。 在這里,您獲得了與 go1.11 類似的信息(并且它有效,我對其進行了測試)。但是對于 go1.13,這些都沒有設置。您仍然可以手動操作。我還檢查了在 1.13 版本上設置了哪些環境。


來自 os.Envrion()


PATH=/layers/google.go.build/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

FUNCTION_SIGNATURE_TYPE=http

DEBIAN_FRONTEND=noninteractive

HOME=/root

K_REVISION=9

FUNCTION_TARGET=HelloWorld

PORT=8080

GOROOT=/usr/local/go/

CGO_ENABLED=1

PWD=/srv

K_SERVICE=function-1

所以你可能想要使用的環境是K_SERVICE


查看完整回答
反對 回復 2022-06-06
?
慕容森

TA貢獻1853條經驗 獲得超18個贊

我代表您創建了一個功能請求,以便云功能工程團隊將這些環境變量的自動設置實施到較新的運行時版本,例如 Node.js 10 和 Go1.13。

您可以為該問題“加注星標”以使其可見,并將您自己包含在“CC”部分中,以便接收在此線程上發布的進一步更新。

我希望這有幫助。


查看完整回答
反對 回復 2022-06-06
?
一只斗牛犬

TA貢獻1784條經驗 獲得超2個贊

我為此目的創建了一個庫: github.com/ncruces/go-gcf/logging


但是你是對的,在 Go 1.13 運行時,這些環境變量是缺失的。在遷移指南中,他們建議在部署時設置它們。


后來我發現推薦的方法是使用結構化日志。


// Structured logging can be used to set severity levels.

// See https://cloud.google.com/logging/docs/structured-logging.

fmt.Println(`{"message": "This has ERROR severity", "severity": "error"}`)

所以現在,我正在“棄用”我的庫,并使用更簡單的方法創建一個新庫: github.com/ncruces/go-gcp/glog


這很簡單,實際上并不需要庫,但它有助于正確地 JSON 轉義消息。


查看完整回答
反對 回復 2022-06-06
  • 3 回答
  • 0 關注
  • 108 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號