我们正在为AWS托管的服务器构建一个使用PHP和Mysql的监视工具,我们从PHP收集调用AWS CLI的数据,要求是仅当发生数据更改后才更新表,否则不更新表,因此为了验证数据在哪里更改,我们使用md5(serialize)函数并将校验和值存储在表中,并且每次调用awscli时,都会使用存储的校验和值来验证命令的输出值不同,那么它将更新数据库,否则将不会更新数据库,例如,因此我可以就这种方法或是否有比当前方法更好的解决方案请您提出建议和建议。
代码
$command = "/usr/bin/aws ec2 describe-snapshots --filters Name=tag:cloud-environment,Values='XXXX'";
exec($command, $output, $status);
foreach($output as $op) {
$checksum = md5(serialize($output));
if(!empty($output) and $checksum != XXX) {
update table
}
答案 0 :(得分:0)
是的,您可以一行完成
$command = "/usr/bin/aws ec2 describe-snapshots --filters Name=tag:cloud-environment,Values='XXXX' | md5sum";