3

嗨,大家好我试图把登录亚马逊CloudWatchLogs这样的:亚马逊CloudWatchLogs putLogEvents

$response2 = $amzonLoger->putLogEvents([ 

      'logGroupName' => 'myGroup', 
      'logStreamName' => 'myStream', 
      'logEvents' => [ 
       [ 
        'timestamp' => time(), 
        'message' => 'message' 
       ], 
      ], 
      'sequenceToken' => lastToken, 
     ]); 
     var_dump($response2); 

但总是我这样的响应:

bject(Guzzle\Service\Resource\Model)#289 (2) { ["structure":protected]=> NULL ["data":protected]=> array(2) { ["nextSequenceToken"]=> string(56) "495401145812734324234234236420825819917076850" ["rejectedLogEventsInfo"]=> array(1) { ["tooOldLogEventEndIndex"]=> int(1) } } } 

ü可以帮助我了解有哪些呢意思是[“rejectedLogEventsInfo”] => array(1){[“tooOldLogEventEndIndex”] => int(1),我将非常感谢帮助。

回答

0

您的错误是告诉你,你使用的时间戳不好。

http://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutLogEvents.html

从DOC:

该批次中的日志事件中没有能够在未来 超过2小时。
批处理中的所有日志事件都不得超过14天 或日志组的保留期限。

如果使用当前时间和当前时间正确,则可能位于不同的时区(即比UTC早2个多小时)。使用UTC时间来记录事件时间戳。

7

好男人我发现解决方案增加了这一行,而不是time()功能的PHP。在此之后example cloudWatchLogs

​​

我希望这可以帮助未来的人谢谢。