【发布时间】:2021-01-02 13:59:56
【问题描述】:
我是 Secret manager 的新手,我正在尝试使用 php 应用程序显示测试密钥。 部署应用程序时我得到的只是错误 500。 根据 gcp 文档(Secret Manager Secret Accessor + Storage Object Admin),我为我的 xxxx@appspot.gserviceaccount.com 服务帐户提供了所需的角色 我还从 Cloud Shell 安装了 composer,所以我真的无法发现我做错了什么。
这是我的 composer.json
{
"require-dev": {
"paragonie/random_compat": "^9.0.0"
},
"require": {
"google/cloud-secret-manager": "^1.2"
}
}
这就是我的代码的样子:
<?php
use Google\Cloud\SecretManager\V1\SecretManagerServiceClient;
$projectId = 'myproject';
$secretId = 'mysecret';
$versionId = '1';
$client = new SecretManagerServiceClient();
$name = $client->secretVersionName($projectId, $secretId, $versionId);
$response = $client->accessSecretVersion($name);
$payload = $response->getPayload()->getData();
printf('Plaintext: %s', $payload);
?>
感谢您的帮助...我不知道该尝试什么了 :-(
【问题讨论】:
-
日志是怎么说的?
-
我几乎看不出日志中有什么问题 :-( 我可以看到响应是 500,但没有多大帮助...
-
没有日志很难调试。你可以看这篇文章来找到你的应用日志:cloud.google.com/appengine/docs/standard/nodejs/building-app/…
-
非常感谢您尝试帮助我。非常感谢。日志显示:
code"textPayload":"[start] 2021/01/02 12:03:59.775036 启动程序失败:由 nginx 退出触发终止"、"insertId":"5ff0612f000bd5d499c4496d"、"resource":{"类型”:“gae_app”,“标签”:{“module_id”:“default”,“version_id”:“20210102t114630”,“project_id”:“myproject”,“zone”:“us12”}code -
嗯...最后我相信有些东西不见了...
code2021/01/04 11:29:42 [error] 23#23: *4 FastCGI sent in stderr: "PHP消息:PHP 致命错误:未捕获的错误:在 /workspace/form.php:11 中找不到类 'Google\Cloud\SecretManager\V1\SecretManagerServiceClient' 堆栈跟踪:#0 /workspace/index.php(5): require() #1 {main} 在第 11 行的 /workspace/form.php 中抛出”,同时从上游读取响应标头,客户端:169.254.1.1,服务器:,请求:“GET /form.php HTTP/1.1”,上游:“fastcgi ://unix:/tmp/google-config/php-fpm.sock:",主机:"mycompany-training-dev.uc.r.appspot.com"code
标签: php google-app-engine google-secret-manager