我正在尝试使用与以下类似的行检查 google aws 服务器的状态:
时间卷曲-k https://blablabla.azazonaws.com/ratingsvc
如果连接失败、超时等。我想给管理员发电子邮件。
我无法将错误代码放入变量中
我正在尝试使用与以下类似的行检查 google aws 服务器的状态:
时间卷曲-k https://blablabla.azazonaws.com/ratingsvc
如果连接失败、超时等。我想给管理员发电子邮件。
我无法将错误代码放入变量中
为了进一步控制 HTTP GET(返回码、分析消息内容等),我推荐使用LWP::UserAgent
use LWP::UserAgent;
my $ua = LWP::UserAgent->new;
my $response = $ua->get('https://blablabla.azazonaws.com/ratingsvc');
并且$response
是HTTP::Response的一个实例,因此您可以完全控制 GET 响应。
您可以这样做以获取返回的退出代码:
use strict;
use warnings;
my $command = 'time curl -k https://blablabla.azazonaws.com/ratingsvc';
my $return_code = system($command);
if ($return_code == 0) {
print "Everything went well...\n";
} else {
print "Oops... curl exited with code $return_code\n";
}
这也会将 STDOUT 和 STDERR 从 curl 打印到屏幕上,但不会影响您的程序。如果您不想看到命令的输出,可以在末尾添加一些内容,例如 >/dev/null,您仍然会得到返回的退出代码。
高温高压
弗朗西斯科