Running stream manager component behind proxy

0

I am using stream manager v2.1.3 with Greengrass Nucleus v2.9.4 on Windows PC behind a proxy. I set JVM_ARGS parameter of stream manager as follows, but stream manager failed to start. How should I configure stream manager component to work properly behind a proxy?

"JVM_ARGS": "-Dhttp.proxyHost=<MyProxyHost> -Dhttp.proxyPort=8080 -Dhttp.proxyUser=<MyProxyUser> -Dhttp.proxyPassword=<MyProxyPassword> -Dhttps.proxyHost=<MyProxyHost> -Dhttps.proxyPort=8080 -Dhttps.proxyUser=<MyProxyUser> -Dhttps.proxyPassword=<MyProxyPassword>"

Following is startup log of stream manager component.

shell-runner-start. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING, command=["java -Djdk.http.auth.tunneling.disabledSchemes=\u0022\u0022 -Dhttp.proxyHost=<MyProxyHost>..."]}
stdout. 2023 3・ス・ス 29 13:17:42,547 [INFO] (main) com.amazonaws.iot.greengrass.streammanager.server.GreengrassCoreV2SDKWrapper: Socket file path: \\.\pipe\NucleusNamedPipe-Cgreengrassv2. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stderr. 3・ス・ス 29, 2023 1:17:42 ・ス゚鯉ソス software.amazon.awssdk.eventstreamrpc.EventStreamRPCConnection$1 onConnectionSetup. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stderr. ・ス・ス・ス: Socket connection \\.\pipe\NucleusNamedPipe-Cgreengrassv2:8033 to server result [AWS_ERROR_SUCCESS]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stderr. 3・ス・ス 29, 2023 1:17:42 ・ス゚鯉ソス software.amazon.awssdk.eventstreamrpc.EventStreamRPCConnection$1 onProtocolMessage. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stderr. ・ス・ス・ス: Connection established with event stream RPC server. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. 2023 3・ス・ス 29 13:17:43,078 [WARN] (main) com.amazonaws.iot.greengrass.streammanager.utils.FileChannelCache: FileChannelCache not initialized! Using defaults. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. 2023 3・ス・ス 29 13:17:44,328 [INFO] (main) com.amazonaws.http.AmazonHttpClient: Configuring Proxy. Proxy Host:  Proxy Port: 8080. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. 2023 3・ス・ス 29 13:17:44,328 [ERROR] (main) com.amazonaws.iot.greengrass.streammanager.StreamManagerService: StreamManagerService: Error initializing. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. java.lang.IllegalArgumentException: Host name may not be empty. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at org.apache.http.util.Args.containsNoBlanks(Args.java:84) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at org.apache.http.HttpHost.<init>(HttpHost.java:80) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.http.apache.SdkProxyRoutePlanner.<init>(SdkProxyRoutePlanner.java:43) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.http.apache.client.impl.ApacheHttpClientFactory.addProxyConfig(ApacheHttpClientFactory.java:94) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.http.apache.client.impl.ApacheHttpClientFactory.create(ApacheHttpClientFactory.java:75) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.http.apache.client.impl.ApacheHttpClientFactory.create(ApacheHttpClientFactory.java:38) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.http.AmazonHttpClient.<init>(AmazonHttpClient.java:339) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.http.AmazonHttpClient.<init>(AmazonHttpClient.java:323) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.AmazonWebServiceClient.<init>(AmazonWebServiceClient.java:239) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.AmazonWebServiceClient.<init>(AmazonWebServiceClient.java:225) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.services.iotanalytics.AWSIoTAnalyticsClient.<init>(AWSIoTAnalyticsClient.java:303) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.services.iotanalytics.AWSIoTAnalyticsClient.<init>(AWSIoTAnalyticsClient.java:289) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.services.iotanalytics.AWSIoTAnalyticsClientBuilder.build(AWSIoTAnalyticsClientBuilder.java:61) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.services.iotanalytics.AWSIoTAnalyticsClientBuilder.build(AWSIoTAnalyticsClientBuilder.java:27) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.client.builder.AwsSyncClientBuilder.build(AwsSyncClientBuilder.java:46) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.iot.greengrass.streammanager.export.AWSClientFactory.createIotAnalyticsClient(AWSClientFactory.java:56) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.iot.greengrass.streammanager.dagger.ExportModule.awsIoTAnalytics(ExportModule.java:80) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.iot.greengrass.streammanager.dagger.ExportModule_AwsIoTAnalyticsFactory.get(ExportModule_AwsIoTAnalyticsFactory.java:29) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.iot.greengrass.streammanager.dagger.ExportModule_AwsIoTAnalyticsFactory.get(ExportModule_AwsIoTAnalyticsFactory.java:10) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at dagger.internal.DoubleCheck.get(DoubleCheck.java:47) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.iot.greengrass.streammanager.dagger.ExportModule_ExportStreamFactoryFactory.get(ExportModule_ExportStreamFactoryFactory.java:68) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.iot.greengrass.streammanager.dagger.ExportModule_ExportStreamFactoryFactory.get(ExportModule_ExportStreamFactoryFactory.java:16) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at dagger.internal.DoubleCheck.get(DoubleCheck.java:47) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.iot.greengrass.streammanager.dagger.ExportModule_ExportManagerFactory.get(ExportModule_ExportManagerFactory.java:90) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.iot.greengrass.streammanager.dagger.ExportModule_ExportManagerFactory.get(ExportModule_ExportManagerFactory.java:20) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at dagger.internal.DoubleCheck.get(DoubleCheck.java:47) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.iot.greengrass.streammanager.dagger.StreamServerModule_StreamServerFactory.get(StreamServerModule_StreamServerFactory.java:70) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.iot.greengrass.streammanager.dagger.StreamServerModule_StreamServerFactory.get(StreamServerModule_StreamServerFactory.java:16) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at dagger.internal.DoubleCheck.get(DoubleCheck.java:47) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.iot.greengrass.streammanager.dagger.DaggerStreamManagerServiceComponent.streamServer(DaggerStreamManagerServiceComponent.java:284) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. at com.amazonaws.iot.greengrass.streammanager.StreamManagerService.main(StreamManagerService.java:44) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. 2023 3・ス・ス 29 13:17:44,531 [INFO] (main) com.amazonaws.iot.greengrass.streammanager.server.GreengrassCoreV2SDKHandler: Stream Manager reporting the state: ERRORED. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STOPPING}
  • Did you manage to solve this?

gefragt vor 2 Jahren650 Aufrufe
12 Antworten
1

Mmm it seems like when the nucleus starts the stream manager process it already sets those environment variables from the configuration See code. So if you are configuring the proxy on the nucleus it seems like you shouldn't need to pass all those properties as JVM args so you could remove the JVM ARGS related to the proxy configuration from the SM. Regardless, it seems like the issue you are now seeing is

java.net.UnknownHostException

which would point to a DSN resolution problem

PS: When removing configuration you will have to use reset

AWS
beantwortet vor 2 Jahren
  • Thank you for response. Indeed, I could see proxy settings loaded without JVM_ARG parameter. Eventually it failed with a similar error...

    In our environment DNS name resolution is done by proxy server. So I think root cause is stream manager could not access S3 endpoint via proxy server.

  • The java.net.UnknownHostException exception doesn't mean the stream manager can not access S3, it means that it could not resolve the IP address of the S3 endpoint provided through the proxy. I think the issue is with the network or proxy configuration that fails to resolve the S3 address.

1
profile pictureAWS
beantwortet vor 2 Jahren
1

If AWS IoT Greengrass is configured with proxy settings, then the Stream Manager component will use it too. See here for configuring the proxy.

AWS
beantwortet vor 2 Jahren
1
  1. Try using

For https

"JVM_ARGS": "-DHTTPS_PROXY=https://<MyProxyUserName>:<MyProxyPassword>@<MyProxyHost>:<MyProxyPort>"

For http

"JVM_ARGS": "-DHTTP_PROXY=http://<MyProxyUserName>:<MyProxyPassword>@<MyProxyHost>:<MyProxyPort>"
  1. If that doesn't work and you get an error post the error you seen on the Stream Manager logs
AWS
beantwortet vor 2 Jahren
0
  • "JVM_ARGS": "-DHTTPS_PROXY=http://<MyProxyUserName>:<MyProxyPassword>@<MyProxyHost>:<MyProxyPort>"
shell-runner-start. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING, command=["java -DHTTPS_PROXY=http://<MyProxyUserName>:<MyProxyPassword>@<MyProxyHost>:<MyProxyPort>..."]}
stdout. 2023 3・ス・ス 30 14:43:12,750 [INFO] (main) com.amazonaws.iot.greengrass.streammanager.server.GreengrassCoreV2SDKWrapper: Socket file path: \\.\pipe\NucleusNamedPipe-Cgreengrassv2. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stderr. 3・ス・ス 30, 2023 2:43:12 ・ス゚鯉ソス software.amazon.awssdk.eventstreamrpc.EventStreamRPCConnection$1 onConnectionSetup. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stderr. ・ス・ス・ス: Socket connection \\.\pipe\NucleusNamedPipe-Cgreengrassv2:8033 to server result [AWS_ERROR_SUCCESS]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stderr. 3・ス・ス 30, 2023 2:43:12 ・ス゚鯉ソス software.amazon.awssdk.eventstreamrpc.EventStreamRPCConnection$1 onProtocolMessage. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stderr. ・ス・ス・ス: Connection established with event stream RPC server. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. 2023 3・ス・ス 30 14:43:13,297 [WARN] (main) com.amazonaws.iot.greengrass.streammanager.utils.FileChannelCache: FileChannelCache not initialized! Using defaults. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. 2023 3・ス・ス 30 14:43:15,000 [INFO] (main) com.amazonaws.internal.DefaultServiceEndpointBuilder: {iotsitewise, ap-northeast-1} was not found in region metadata, trying to construct an endpoint using the standard pattern for this region: 'iotsitewise.ap-northeast-1.amazonaws.com'.. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. 2023 3・ス・ス 30 14:43:15,203 [WARN] (main) com.amazonaws.iot.greengrass.streammanager.server.protocol.AuthHandler: Greengrass v1 Auth SDK not detected. Attempting to use the v2 SDK.. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. 2023 3・ス・ス 30 14:43:15,203 [INFO] (main) com.amazonaws.iot.greengrass.streammanager.server.StreamServer: Starting streamServer on port: 8088. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. 2023 3・ス・ス 30 14:43:15,219 [INFO] (main) com.amazonaws.iot.greengrass.streammanager.export.decider.Decider: Starting decider. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. 2023 3・ス・ス 30 14:43:15,922 [INFO] (pool-6-thread-1) com.amazonaws.iot.greengrass.streammanager.server.GreengrassCoreV2SDKHandler: Publish the stream manager port: 8088. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. 2023 3・ス・ス 30 14:43:15,922 [INFO] (pool-6-thread-1) com.amazonaws.iot.greengrass.streammanager.server.StreamServer: StreamServer ready to accept connections on port 8088. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. 2023 3・ス・ス 30 14:43:15,937 [INFO] (pool-6-thread-1) com.amazonaws.iot.greengrass.streammanager.server.GreengrassCoreV2SDKHandler: Stream Manager reporting the state: RUNNING. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. 2023 3・ス・ス 30 14:43:16,617 [ERROR] (pool-7-thread-2) com.amazonaws.iot.greengrass.streammanager.export.upload.MessageUploaderTask: Encountered Throwable when exporting messages. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. com.amazonaws.SdkClientException: Unable to execute HTTP request: <MyS3Endpoint>. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutor.handleRetryableException(AmazonHttpClient.java:1207) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeHelper(AmazonHttpClient.java:1153) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutor.doExecute(AmazonHttpClient.java:802) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeWithTimer(AmazonHttpClient.java:770) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutor.execute(AmazonHttpClient.java:744) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutor.access$500(AmazonHttpClient.java:704) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutionBuilderImpl.execute(AmazonHttpClient.java:686) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:550) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:530) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:5437) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:5384) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.services.s3.AmazonS3Client.access$300(AmazonS3Client.java:421) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.services.s3.AmazonS3Client$PutObjectStrategy.invokeServiceCall(AmazonS3Client.java:6508) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.services.s3.AmazonS3Client.uploadObject(AmazonS3Client.java:1856) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.services.s3.AmazonS3Client.putObject(AmazonS3Client.java:1816) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.iot.greengrass.streammanager.export.destination.S3TaskDestination.makeSinglePutRequest(S3TaskDestination.java:435) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.iot.greengrass.streammanager.export.destination.S3TaskDestination.sendMessage(S3TaskDestination.java:155) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.iot.greengrass.streammanager.export.upload.MessageUploaderTask.upload(MessageUploaderTask.java:77) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1700) ~[?:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[?:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[?:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at java.lang.Thread.run(Thread.java:829) ~[?:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. Caused by: java.net.UnknownHostException: <MyS3Endpoint>. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
beantwortet vor 2 Jahren
  • Let me take a look at this. Do you see any in the entries in your proxy server referencing the Stream Manager targets.

  • Running it with DEBUG level logs should print on the logs the proxy url. There is a Setting https proxy to {}", httpsProxyEnvVar); debug level log when configuring it and we get the httpsProxyEnvVar from System.getenv(HTTPS_PROXY)

0

Thank you for your answer.

I have already checked "Stream Manager configuration file reference", but I have never seen "Stream Manager troubleshooting guide". The above URL seems to be invalid for me, so could you tell me the correct URL?

beantwortet vor 2 Jahren
0

I'm sorry, I tried it again and I could access the trouble shooting guide without any problem.

Unfortunately, I couldn't find anything related to the proxy setting of stream manager component.

beantwortet vor 2 Jahren
0

Thank you for your answer.

I tried suggested approaches, but neither worked. Greengrass Nucleus itself can communicate through a proxy server without any problems.

Here are the logs of stream manager component.

  • "JVM_ARGS": ""
	shell-runner-start. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING, command=["java  -cp \u0022C:\greengrass\v2\packages\artifacts\aws.greengrass.StreamManager\2...."]}
	stdout. 2023 3・ス・ス 30 11:52:31,545 [INFO] (main) com.amazonaws.iot.greengrass.streammanager.server.GreengrassCoreV2SDKWrapper: Socket file path: \\.\pipe\NucleusNamedPipe-Cgreengrassv2. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
	stderr. 3・ス・ス 30, 2023 11:52:31 ・ス゚前 software.amazon.awssdk.eventstreamrpc.EventStreamRPCConnection$1 onConnectionSetup. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
	stderr. ・ス・ス・ス: Socket connection \\.\pipe\NucleusNamedPipe-Cgreengrassv2:8033 to server result [AWS_ERROR_SUCCESS]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
	stderr. 3・ス・ス 30, 2023 11:52:31 ・ス゚前 software.amazon.awssdk.eventstreamrpc.EventStreamRPCConnection$1 onProtocolMessage. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
	stderr. ・ス・ス・ス: Connection established with event stream RPC server. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
	stdout. 2023 3・ス・ス 30 11:52:32,076 [WARN] (main) com.amazonaws.iot.greengrass.streammanager.utils.FileChannelCache: FileChannelCache not initialized! Using defaults. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
	stdout. 2023 3・ス・ス 30 11:52:33,623 [INFO] (main) com.amazonaws.internal.DefaultServiceEndpointBuilder: {iotsitewise, ap-northeast-1} was not found in region metadata, trying to construct an endpoint using the standard pattern for this region: 'iotsitewise.ap-northeast-1.amazonaws.com'.. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
	stdout. 2023 3・ス・ス 30 11:52:33,764 [WARN] (main) com.amazonaws.iot.greengrass.streammanager.server.protocol.AuthHandler: Greengrass v1 Auth SDK not detected. Attempting to use the v2 SDK.. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
	stdout. 2023 3・ス・ス 30 11:52:33,779 [INFO] (main) com.amazonaws.iot.greengrass.streammanager.server.StreamServer: Starting streamServer on port: 8088. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
	stdout. 2023 3・ス・ス 30 11:52:33,779 [INFO] (main) com.amazonaws.iot.greengrass.streammanager.export.decider.Decider: Starting decider. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
	stdout. 2023 3・ス・ス 30 11:52:34,842 [INFO] (pool-6-thread-1) com.amazonaws.iot.greengrass.streammanager.server.GreengrassCoreV2SDKHandler: Publish the stream manager port: 8088. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
	stdout. 2023 3・ス・ス 30 11:52:34,842 [INFO] (pool-6-thread-1) com.amazonaws.iot.greengrass.streammanager.server.StreamServer: StreamServer ready to accept connections on port 8088. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. 2023 3・ス・ス 30 11:52:34,842 [INFO] (pool-6-thread-1) com.amazonaws.iot.greengrass.streammanager.server.GreengrassCoreV2SDKHandler: Stream Manager reporting the state: RUNNING. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. 2023 3・ス・ス 30 11:52:35,509 [ERROR] (pool-7-thread-1) com.amazonaws.iot.greengrass.streammanager.export.upload.MessageUploaderTask: Encountered Throwable when exporting messages. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. com.amazonaws.SdkClientException: Unable to execute HTTP request: <MyS3Endpoint>. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutor.handleRetryableException(AmazonHttpClient.java:1207) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeHelper(AmazonHttpClient.java:1153) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutor.doExecute(AmazonHttpClient.java:802) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeWithTimer(AmazonHttpClient.java:770) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutor.execute(AmazonHttpClient.java:744) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutor.access$500(AmazonHttpClient.java:704) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutionBuilderImpl.execute(AmazonHttpClient.java:686) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:550) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:530) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:5437) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:5384) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at com.amazonaws.services.s3.AmazonS3Client.access$300(AmazonS3Client.java:421) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at com.amazonaws.services.s3.AmazonS3Client$PutObjectStrategy.invokeServiceCall(AmazonS3Client.java:6508) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at com.amazonaws.services.s3.AmazonS3Client.uploadObject(AmazonS3Client.java:1856) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at com.amazonaws.services.s3.AmazonS3Client.putObject(AmazonS3Client.java:1816) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at com.amazonaws.iot.greengrass.streammanager.export.destination.S3TaskDestination.makeSinglePutRequest(S3TaskDestination.java:435) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at com.amazonaws.iot.greengrass.streammanager.export.destination.S3TaskDestination.sendMessage(S3TaskDestination.java:155) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at com.amazonaws.iot.greengrass.streammanager.export.upload.MessageUploaderTask.upload(MessageUploaderTask.java:77) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1700) ~[?:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[?:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[?:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
	stdout. at java.lang.Thread.run(Thread.java:829) ~[?:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. Caused by: java.net.UnknownHostException: <MyS3Endpoint>. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
beantwortet vor 2 Jahren
0
  • "JVM_ARGS": "-DHTTP_PROXY=http://<MyProxyUserName>:<MyProxyPassword>@<MyProxyHost>:<MyProxyPort>"
shell-runner-start. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING, command=["java -DHTTP_PROXY=http://<MyProxyUserName>:<MyProxyPassword>@<MyProxyHost>:<MyProxyPort>..."]}
stdout. 2023 3・ス・ス 30 11:12:59,484 [INFO] (main) com.amazonaws.iot.greengrass.streammanager.server.GreengrassCoreV2SDKWrapper: Socket file path: \\.\pipe\NucleusNamedPipe-Cgreengrassv2. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stderr. 3・ス・ス 30, 2023 11:12:59 ・ス゚前 software.amazon.awssdk.eventstreamrpc.EventStreamRPCConnection$1 onConnectionSetup. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stderr. ・ス・ス・ス: Socket connection \\.\pipe\NucleusNamedPipe-Cgreengrassv2:8033 to server result [AWS_ERROR_SUCCESS]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stderr. 3・ス・ス 30, 2023 11:12:59 ・ス゚前 software.amazon.awssdk.eventstreamrpc.EventStreamRPCConnection$1 onProtocolMessage. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stderr. ・ス・ス・ス: Connection established with event stream RPC server. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. 2023 3・ス・ス 30 11:12:59,921 [WARN] (main) com.amazonaws.iot.greengrass.streammanager.utils.FileChannelCache: FileChannelCache not initialized! Using defaults. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. 2023 3・ス・ス 30 11:13:01,593 [INFO] (main) com.amazonaws.internal.DefaultServiceEndpointBuilder: {iotsitewise, ap-northeast-1} was not found in region metadata, trying to construct an endpoint using the standard pattern for this region: 'iotsitewise.ap-northeast-1.amazonaws.com'.. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. 2023 3・ス・ス 30 11:13:01,749 [WARN] (main) com.amazonaws.iot.greengrass.streammanager.server.protocol.AuthHandler: Greengrass v1 Auth SDK not detected. Attempting to use the v2 SDK.. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. 2023 3・ス・ス 30 11:13:01,749 [INFO] (main) com.amazonaws.iot.greengrass.streammanager.server.StreamServer: Starting streamServer on port: 8088. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. 2023 3・ス・ス 30 11:13:01,765 [INFO] (main) com.amazonaws.iot.greengrass.streammanager.export.decider.Decider: Starting decider. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. 2023 3・ス・ス 30 11:13:03,359 [INFO] (pool-6-thread-1) com.amazonaws.iot.greengrass.streammanager.server.GreengrassCoreV2SDKHandler: Publish the stream manager port: 8088. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. 2023 3・ス・ス 30 11:13:03,359 [INFO] (pool-6-thread-1) com.amazonaws.iot.greengrass.streammanager.server.StreamServer: StreamServer ready to accept connections on port 8088. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=STARTING}
stdout. 2023 3・ス・ス 30 11:13:03,374 [INFO] (pool-6-thread-1) com.amazonaws.iot.greengrass.streammanager.server.GreengrassCoreV2SDKHandler: Stream Manager reporting the state: RUNNING. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. 2023 3・ス・ス 30 11:13:04,008 [ERROR] (pool-7-thread-1) com.amazonaws.iot.greengrass.streammanager.export.upload.MessageUploaderTask: Encountered Throwable when exporting messages. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. com.amazonaws.SdkClientException: Unable to execute HTTP request: <MyS3Endpoint>. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutor.handleRetryableException(AmazonHttpClient.java:1207) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeHelper(AmazonHttpClient.java:1153) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutor.doExecute(AmazonHttpClient.java:802) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeWithTimer(AmazonHttpClient.java:770) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutor.execute(AmazonHttpClient.java:744) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutor.access$500(AmazonHttpClient.java:704) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.http.AmazonHttpClient$RequestExecutionBuilderImpl.execute(AmazonHttpClient.java:686) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:550) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:530) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:5437) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:5384) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.services.s3.AmazonS3Client.access$300(AmazonS3Client.java:421) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.services.s3.AmazonS3Client$PutObjectStrategy.invokeServiceCall(AmazonS3Client.java:6508) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.services.s3.AmazonS3Client.uploadObject(AmazonS3Client.java:1856) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.services.s3.AmazonS3Client.putObject(AmazonS3Client.java:1816) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.iot.greengrass.streammanager.export.destination.S3TaskDestination.makeSinglePutRequest(S3TaskDestination.java:435) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.iot.greengrass.streammanager.export.destination.S3TaskDestination.sendMessage(S3TaskDestination.java:155) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at com.amazonaws.iot.greengrass.streammanager.export.upload.MessageUploaderTask.upload(MessageUploaderTask.java:77) ~[AWSGreengrassGreenlake-1.0-super.jar:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1700) ~[?:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[?:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[?:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. at java.lang.Thread.run(Thread.java:829) ~[?:?]. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
stdout. Caused by: java.net.UnknownHostException: <MyS3Endpoint>. {scriptName=services.aws.greengrass.StreamManager.lifecycle.startup.script, serviceName=aws.greengrass.StreamManager, currentState=RUNNING}
beantwortet vor 2 Jahren
0

Thank you for your responses.

I'm sorry, but I can't confirm whether our proxy server actually accessed my S3 endpoint for permission reasons.

I saw the URL of our proxy server in the DEBUG level log. Following is an excerpt from the stream manager log:

[DEBUG] (main) com.amazonaws.iot.greengrass.streammanager.common.ProxyManager: Setting https proxy to http://<MyProxyUserName>:<MyProxyPassword>@<MyProxyHost>:<MyProxyPort>
[DEBUG] (main) com.amazonaws.iot.greengrass.streammanager.common.ProxyManager: Setting http proxy to http://<MyProxyUserName>:<MyProxyPassword>@<MyProxyHost>:<MyProxyPort>
[DEBUG] (main) com.amazonaws.iot.greengrass.streammanager.common.ProxyManager: Setting http.nonProxyHost to localhost
(snip)
[DEBUG] (pool-7-thread-1) com.amazonaws.request: Sending Request: PUT https://<MyS3Endpoint> <MyFile1> Headers: (amz-sdk-invocation-id: <SDKInvocationID1>, Content-Length: 0, Content-Type: application/octet-stream, User-Agent: AWSGreengrass-StreamManager v1.1.0;, aws-internal/3 aws-sdk-java/1.11.1030 Windows_Server_2019/10.0 OpenJDK_64-Bit_Server_VM/11.0.18+10-LTS java/11.0.18 kotlin/1.3.72 vendor/Microsoft cfg/retry-mode/standard, x-amz-meta-$aws-gg-source: AWSGreengrass-StreamManager v1.1.0;, )
(snip)
[DEBUG] (pool-7-thread-1) org.apache.http.impl.conn.PoolingHttpClientConnectionManager: Connection request: [route: {s}->https://<MyS3Endpoint>:443][total available: 0; route allocated: 0 of 50; total allocated: 0 of 50]
[DEBUG] (pool-7-thread-1) org.apache.http.impl.conn.PoolingHttpClientConnectionManager: Connection leased: [id: 0][route: {s}->https://<MyS3Endpoint>:443][total available: 0; route allocated: 1 of 50; total allocated: 1 of 50]
[DEBUG] (pool-7-thread-1) org.apache.http.impl.execchain.MainClientExec: Opening connection {s}->https://<MyS3Endpoint>:443
(snip)
[DEBUG] (pool-7-thread-2) com.amazonaws.request: Sending Request: PUT https://<MyS3Endpoint> <MyFile2> Headers: (amz-sdk-invocation-id: <SDKInvocationID2>, Content-Length: 2539349, Content-Type: application/octet-stream, User-Agent: AWSGreengrass-StreamManager v1.1.0;, aws-internal/3 aws-sdk-java/1.11.1030 Windows_Server_2019/10.0 OpenJDK_64-Bit_Server_VM/11.0.18+10-LTS java/11.0.18 kotlin/1.3.72 vendor/Microsoft cfg/retry-mode/standard, x-amz-meta-$aws-gg-source: AWSGreengrass-StreamManager v1.1.0;, )
(snip)
[DEBUG] (pool-7-thread-2) org.apache.http.impl.conn.PoolingHttpClientConnectionManager: Connection request: [route: {s}->https://<MyS3Endpoint>:443][total available: 0; route allocated: 1 of 50; total allocated: 1 of 50]
[DEBUG] (pool-7-thread-2) org.apache.http.impl.conn.PoolingHttpClientConnectionManager: Connection leased: [id: 1][route: {s}->https://<MyS3Endpoint>:443][total available: 0; route allocated: 2 of 50; total allocated: 2 of 50]
[DEBUG] (pool-7-thread-2) org.apache.http.impl.execchain.MainClientExec: Opening connection {s}->https://<MyS3Endpoint>:443
[DEBUG] (pool-7-thread-1) com.amazonaws.http.conn.ClientConnectionManagerFactory:
java.lang.reflect.InvocationTargetException: null
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at com.amazonaws.http.conn.ClientConnectionManagerFactory$Handler.invoke(ClientConnectionManagerFactory.java:76) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.http.conn.$Proxy25.connect(Unknown Source) ~[?:?]
at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:393) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:186) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:56) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.http.apache.client.impl.SdkHttpClient.execute(SdkHttpClient.java:72) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeOneRequest(AmazonHttpClient.java:1331) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeHelper(AmazonHttpClient.java:1145) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.doExecute(AmazonHttpClient.java:802) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeWithTimer(AmazonHttpClient.java:770) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.execute(AmazonHttpClient.java:744) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.access$500(AmazonHttpClient.java:704) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.http.AmazonHttpClient$RequestExecutionBuilderImpl.execute(AmazonHttpClient.java:686) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:550) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:530) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:5437) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:5384) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.services.s3.AmazonS3Client.access$300(AmazonS3Client.java:421) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.services.s3.AmazonS3Client$PutObjectStrategy.invokeServiceCall(AmazonS3Client.java:6508) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.services.s3.AmazonS3Client.uploadObject(AmazonS3Client.java:1856) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.services.s3.AmazonS3Client.putObject(AmazonS3Client.java:1816) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.iot.greengrass.streammanager.export.destination.S3TaskDestination.makeSinglePutRequest(S3TaskDestination.java:435) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.iot.greengrass.streammanager.export.destination.S3TaskDestination.sendMessage(S3TaskDestination.java:155) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at com.amazonaws.iot.greengrass.streammanager.export.upload.MessageUploaderTask.upload(MessageUploaderTask.java:77) ~[AWSGreengrassGreenlake-1.0-super.jar:?]
at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1700) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[?:?]
at java.lang.Thread.run(Thread.java:829) ~[?:?]
Caused by: java.net.UnknownHostException: 繝サ・ス繝サ・ス繝サ・ス・後h縺・・・ス・医・繝サ・スX繝サ・スg繝サ・ス・堺ク阪・・ス繝サ・ス繝サ・ス・・q・ソ・ス繝サ・スB (<MyS3Endpoint>)
beantwortet vor 2 Jahren
0

Thank you for your response.

The java.net.UnknownHostException exception doesn't mean the stream manager can not access S3, it means that it could not resolve the IP address of the S3 endpoint provided through the proxy. I think the issue is with the network or proxy configuration that fails to resolve the S3 address.

I analyzed network packets at the beginning of HTTP communication for Nucleus and Stream Manager. In the case of Nucleus, our proxy server was resolved first, and then Nucleus could access endpoints via our proxy server. Stream Manager, on the other hand, tried and failed to resolve S3 endpoint, but I think it should be accessed through our proxy server as well as Nucleus. Followings are screenshots of Wireshark.

Nucleus: Nucleus connect

Stream Manager: Stream Manager connect

I have already configured proxy settings (WinHTTP, WinINet, environment variables) for Windows OS, but if there is anything else needs to be configured, please let me know.

beantwortet vor 2 Jahren
0

I am running into the same issue. Did you manage to solve this?

beantwortet vor 2 Jahren

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen