我有一个每 5 分钟运行一次的 Perl 脚本,它执行一次 API 调用。此 API 调用由 REST 调用组成,用于对数据库进行身份验证。如果我验证成功,它会返回“ok”或“1”。
我的任务是为我们的前端开发人员提供此 API 调用的正常运行时间可用性。例如,反映范围的“99.98888”性质的东西;例如,90 天的范围或可能的 365 天。
这是执行 API 调用的脚本。
#!/usr/bin/perl -w
use strict;
use LWP::UserAgent;
use Data::Dumper;
use XML::Simple;
use JSON;
## Perl's way of slurping the xml file
my $message = do {
open my $fh, '<', '/usr/lib/xymon/server/ext/States/Puerto-Rico/credentials.xml' or die "Could not open file: $!";
local $/;
<$fh>;
};
my $start = `date +%s.%N`;
my $webpage = "https://xxxxxxxxx/xxxxxx.asp";
my $ua = LWP::UserAgent->new;
my $response = $ua->post($webpage, Content_Type => 'text/xml',
Content => $message);
my $end = `date +%s.%N`;
my $eventtime = `date +%c`;
my $time = $end - $start;
my $response_time = sprintf "%.1f", $time;
if ( $response->is_success) {
my $xml = new XML::Simple;
my $x = $response->decoded_content;
# read XML file
my $data = $xml->XMLin($x);
my $success = $data->{'success'};
if ( $response_time < 5 && $success == '1' )
{
print "good\n";
}
我需要添加代码或数学公式,以便在此 Perl 脚本中为我提供此 API 调用 90 或 365 天(脚本可以每 1 或 5 分钟运行一次)的正常运行时间可用性,以便它可以填充文本文件。然后前端开发人员将从文本文件中检索数据并制作漂亮的网页或 JavaScript 调用。任何提示将不胜感激,我也可以用 python 编写它。