GCP 数据流警告消息 RMI TCP“java.net.SocketTimeoutException:接受超时

GCP Dataflow warning message RMI TCP "java.net.SocketTimeoutException: Accept timed out

我是 运行 apache beam java 管道,出于某种原因在 GCP 中收到大量警告日志。 我尝试将包 java.net、sun.rmi 的日志级别更改为 SEVERE 但仍然没有成功。 日志被这些警告消息污染了。还有其他人面临同样的问题吗?

   jsonPayload: {
  exception: "java.net.SocketTimeoutException: Accept timed out
    at java.base/java.net.PlainSocketImpl.socketAccept(Native Method)
    at java.base/java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:458)
    at java.base/java.net.ServerSocket.implAccept(ServerSocket.java:551)
    at java.base/java.net.ServerSocket.accept(ServerSocket.java:519)
    at java.rmi/sun.rmi.transport.tcp.TCPTransport$AcceptLoop.executeAcceptLoop(TCPTransport.java:394)
    at java.rmi/sun.rmi.transport.tcp.TCPTransport$AcceptLoop.run(TCPTransport.java:366)
    at java.base/java.lang.Thread.run(Thread.java:834)
"   
  logger: "sun.rmi.transport.tcp"   
  message: "RMI TCP Accept-5555: accept loop for ServerSocket[addr=0.0.0.0/0.0.0.0,localport=5555] throws"

管道很简单:从 Pubsub 到 Postgres。没有额外的第三方连接。

请参阅 public 有关 troubleshooting 的文档。

Select 作业以查看有关错误和 运行 结果的更多详细信息。当您 select 一个作业时,您可以查看执行图以及有关该作业的一些信息。然后,单击“日志”按钮查看管道代码和 Dataflow 服务生成的日志消息。

您可以使用的另一件事是调试选项。 运行使用 gcloud 命令时,您可以包含选项 --verbosity=debug 以获得调试输出。

这可能与 JVM 错误有关。请检查 Java SDK 版本并升级到更新的(2.17.0 或更高版本)。

此外,检查 Encoding errors, IOExceptions, or unexpected behavior in user code error

希望以上信息对您有用。

我无法找出实际问题,但与此同时,因为它正在污染日志跟踪,所以在管道选项中添加了标志:

--workerLogLevelOverrides={"sun.rmi.transport.tcp":"OFF"}