问题标签 [spring-cloud-gcp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1005 浏览

spring-boot - 结构化 Stackdriver 日志 - 将 MDC 添加到日志

在日志中添加了 MDC,以便能够在 Stackdriver 仪表板和日志控制台中跟踪特定错误日志。当前的实现在本地机器上运行良好,但在云上却不是——只是不要将我的 MDC 包括在日志条目中。问题是我根本无法弄清楚可能是什么问题。

本地日志输出(包含“contextKey”:“someValue”):

同一服务的 Kubernetes 容器日志(此日志条目中没有“contextKey”:“someValue”):

我的 logback.xml:

使用定义的 MDC 触发日志创建的控制器:

0 投票
2 回答
2503 浏览

spring-boot - GCP 和 Spring 回退。严重性始终是信息

将错误记录到 stackdriver 时,每条消息都记录为 INFO,即使使用 log.error 或 log.warn 等,但有效负载是正确的。

在此处输入图像描述

我希望能够按严重性过滤并收到错误电子邮件。

我正在使用 Spring Boot 和 Logback。该应用程序已部署在 GCP 上的 Kubernetes 集群上。

这是我的 logback-spring.xml

这是在 Maven 中添加的 dep

Spring Boot 版本:2.1.3.RELEASE
Spring Cloud 版本:Greenwich.RELEASE

这个配置有什么问题?还有其他解决方案吗?

编辑:刚刚意识到上面的 STACKDRIVER 附加程序不是记录到 Stackdriver 的那个,但 STDOUT 就足够了(也许它是一个 Kubernetes 集群?),但问题仍然存在

0 投票
1 回答
800 浏览

spring-boot - 在 pubsub/spring-cloud-gcp-pubsub 中为订阅者重试设置

我有一个春季服务订阅来自谷歌云发布订阅(拉)中的主题的消息。

我试图在我的配置文件配置中设置这些配置。像这样管理消息的重试:

我一直收到所有消息并且像我的配置一样重试 2 次后它没有被删除的问题。

我尝试了nack()消息,但它不起作用

0 投票
1 回答
281 浏览

java - 将Java Spring项目与云数据库连接

我用 Java 创建了一个 Spring Boot 项目,它与我的本地数据库完美配合,但我无法将它连接到我的 GCP postgres 云 SQL 实例。

我已按照以下步骤操作:https ://cloud.spring.io/spring-cloud-gcp/multi/multi__spring_jdbc.html 我还在 pom.xml 中进行了必要的更改。我需要在 application.properties 文件中更改什么吗?

我希望我的项目能够正常工作,指向云数据库。

0 投票
1 回答
103 浏览

java - 如何更改spring cloud gcp的依赖版本

对于spring boot,我可以在文档中看到所有依赖属性名称:https ://github.com/spring-projects/spring-boot/blob/master/spring-boot-project/spring-boot-dependencies/pom.xml所以我可以很容易地从 gradle 改变它们

但是我在哪里可以找到 spring-cloud-gcp-pubsub 的相同依赖项列表

我不想更改的版本com.google.cloud:google-cloud-pubsub

0 投票
2 回答
354 浏览

spring - 如何将 Spring Cloud GCP 用于多个谷歌项目

对于熟悉 GCP 的人来说,它对用户和权限控制有一些“限制”。

例如,Datastore 没有任何方法来管理数据库本身的用户角色,它只有平台的 IAM。

正因为如此,谷歌的员工建议他们的客户使用 GCP 的多个项目和文件夹,以便对其进行更多控制。我已经看过一段时间了。

问题是:如何在Spring Cloud GCP上连接多个GCP项目的多个资源?我们的应用程序应该访问来自不同项目的 Datastore 和其他资源,而我正在努力解决这个问题。

即使 Spring Cloud GCP 不支持多个 GCP 项目,有什么解决方法吗?

谢谢你们。

0 投票
1 回答
911 浏览

configuration - 如何使用 Spring Cloud 在一个 Spring Boot 应用程序中连接/配置两个 pubsub gcp 项目?

目前,我们正在开发 GCP 项目中的 Spring Boot 应用程序,该应用程序连接到同一 GCP 项目中的 PubSub 端点,但也连接到另一个GCP 项目中的 PubSub 端点。我想使用普通的 spring cloud GCP PubSub 组件,但是有了这些,我没有机会设置第二个 PubSub 连接到第二个 GCP 项目。此外,如果我有一个服务帐户,则使用 PubSubTemplate 对象,我无法在另一个项目中定位主题,而不是来自服务帐户的当前主题。是实现/扩展 PubSubAdmin/PubSubTemplate 的唯一方法,还是还有像 JPA 数据库的多个连接和模板这样的解决方案?

亲切的问候斯文

0 投票
0 回答
507 浏览

mysql - Google App Engine Mysql Driver 不接受 JDBC url spring cloud gcp

我正在尝试使用 spring cloud gcp 在 Google App Engine 上部署 spring boot 应用程序。

在本地运行 Mysql 时形成 JDBL Url,成功连接到 Google Cloud Platform 中的 Cloud Mysql 数据库。当应用程序被部署(appengine:deploy)时,当api被命中时,它会尝试连接到mysql,形成的url是我的jdbc驱动程序不可接受的。引发以下异常

java.lang.RuntimeException:驱动程序 com.mysql.cj.jdbc.Driver 声称在 org.eclipse.jetty 不接受 jdbcUrl、jdbc:google:mysql://pocketpharmaapi123:asia-southeast1:pocketpharmapi-db-instance/pocketpharmadb。 annotations.ServletContainerInitializersStarter.doStart (ServletContainerInitializersStarter.java:68) 在 org.eclipse.jetty.util.component.AbstractLifeCycle.start (AbstractLifeCycle.java:68) 在 org.eclipse.jetty.servlet.ServletContextHandler.startContext (ServletContextHandler.java: 330) 在 org.eclipse.jetty.webapp.WebAppContext.startWebapp (WebAppContext.java:1406) 在 com.google.apphosting.runtime.jetty9.AppEngineWebAppContext.startWebapp (AppEngineWebAppContext.java:175)

应用部署时如何成功连接数据库?

我试图在 application.properties 中对 jdbcUrl 进行硬编码。它给出了代理例外。

pom.xml

应用程序属性

0 投票
1 回答
437 浏览

spring - Spring GCP - 数据存储性能:批处理,遍历所有实体列表非常慢

以下代码工作非常缓慢,处理 400 个实体几乎需要 30 秒:

我改用以下方法,每 400 个实体 4-6 秒(gcp lib 与数据存储一起使用)

为什么我不能使用 spring 进行批处理?

0 投票
1 回答
1108 浏览

google-cloud-platform - 无法从 GCP pubsub 读取

我正在努力从正在写入云流处理程序的目标通道中读取消息。

我有用于在测试容器中运行的 pub/sub 的 gcp 模拟器。我能够成功地将消息发送到输入队列/主题(对不起,我来自 JMS 背景,不确定 gcp pub/sub 的正确术语)

弹簧流配置:

测试用例:

而不是使用template.pull我尝试使用template.subscribe但我仍然有同样的问题。控制台日志:

日志确实表明来自测试代码的事件正在发送并且消息正在由处理器处理:

我将不胜感激任何帮助