Google Cloud Function 成功,但未显示预期输出

Google Cloud Function succeeds, but not showing expected output

我正在测试云功能并进行了设置,但输出未正确填充(输出未保存到云存储中,我的打印语句未填充)。下面是我的代码和我的要求。我已将 Cloud Function 设置为仅 运行 作为具有未经身份验证调用的 HTTP 请求触发器类型,并将运行时服务帐户设置为具有对 Cloud Storage 的写入权限的指定帐户。我已确认调用了正确的入口点。

日志

2022-03-22T18:52:02.749482564Z test-example vczj9p85h5m2 Function execution started
2022-03-22T18:52:04.148507183Z test-example vczj9p85h5m2 Function execution took 1399 ms. 
Finished with status code: 200

main.py

import requests
from google.cloud import storage
import json

def upload_to_gsc(data):
    print("saving to cloud storage")
    client = storage.Client(project="my-project-id")
    bucket = client.bucket("my-bucket-name")
    blob = bucket.blob("subfolder/name_of_file")
    blob.upload_from_string(data)
    print("data uploaded to cloud storage")

def get_pokemon(request):
    url = "https://pokeapi.co/api/v2/pokemon?limit=100&offset=200"
    data = requests.get(url).json()
    output = [i.get("name") for i in data["results"]]
    data = json.dumps(output)
    upload_to_gsc(data=data)
    print("saved data!")    

requirements.txt

google-cloud-storage
requests==2.26.0

正如@dko512 在评论中提到的,问题已通过重新创建和重新部署 Cloud Function 得到解决。

将答案作为社区 wiki 发布,以造福于将来可能会遇到此用例的社区。

随时编辑此答案以获取更多信息。

正如@JackWotherspoon 提到的,如果您有像我一样的情况,请务必仔细检查您的 project-id、bucket-name 和入口点。对于我自己,我重新创建了 Cloud Function 并对其进行了测试,它再次运行。