perl - LWP::Protocol::https::Socket: 连接:超时错误

标签 perl amazon-web-services ssl amazon-cloudwatch cloudwatch

我正在尝试配置 aws cloudwatch 脚本来监控内存等。执行脚本时出现以下错误,我升级了 perl 包,LWP 版本也是最新的为 6,但脚本仍然失败并出现以下错误。

我尝试将环境变量设置为 PERL_LWP_ENV_PROXY=1PERL_LWP_SSL_VERIFY_HOSTNAME=0 但仍然失败。请对此提供帮助。

[ec2-user@ip-10-175-82-195 aws-scripts-mon]$ sudo ./mon-put-instance-data.pl --mem-util --mem-used --mem-avail --aws-credential-file=./awscreds.template

ERROR: Failed to call CloudWatch: HTTP 500. Message: Can't connect to monitoring.ap-southeast-1.amazonaws.com:443 (timeout)

LWP::Protocol::https::Socket: connect: timeout at /usr/local/share/perl5/LWP/Protocol/http.pm line 47.

For more information, run 'mon-put-instance-data.pl --help'

最佳答案

PERL_LWP_ENV_PROXY=1

我想这也意味着您已将 http_proxy 环境变量设置为它应该使用的代理,并且除了使用该代理之外别无他法。

$ sudo ./mon-put-instance-data.pl

使用 sudo 调用某些东西将以不同的权限运行它。出于安全原因,在调用程序之前,sudo 会大量清理环境变量,这可能意味着 http_proxy 对于 sudo 运行的程序是空的。这再次意味着它将尝试直接访问目标站点而不是使用代理,并且连接将超时,因为只能使用代理访问该站点。

关于perl - LWP::Protocol::https::Socket: 连接:超时错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40123294/

相关文章:

xml - 使用 XML::LibXML 解析 XML 的 Perl 脚本;

mysql - 确定 RDS 中断的原因

ssl - 加密密码kafka ssl设置

ruby-on-rails - 在重定向到 ssl 页面之前出现 ERR_INSECURE_RESPONSE 错误

regex - 使用散列的 Perl 替换

perl - 如何让Perl接受负数作为命令行参数?

django - 在 AWS Elastic Beanstalk 上部署 Geodjango 应用程序

python - 如何将 Python Lambda 函数集成到 AWS Amplify 的管道中

ssl - 配置 Traefik TLS 时出错 "Error configuring TLS for ingress secret does not exist"

perl - 如何在 Perl 中找到比给定日期早三天的日期?