Amazon CloudWatchLogs putLogEvents в PHP тоже выдает ошибкуOldLogEventEndIndex

Привет, ребята, я пытаюсь поставить Log на Amazon CloudWatchLogs, как это:

$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), я буду очень благодарен за помощь.

6

Решение

Ваша ошибка говорит о том, что используемая вами временная метка не подходит.

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

Из документа:

Ни одно из событий журнала в пакете не может быть более 2 часов в
будущее.
Ни одно из событий журнала в пакете не может быть старше 14 дней
или срок хранения группы журналов.

Если вы используете текущее время и текущее время правильно, вы можете находиться в другом часовом поясе (то есть более чем на 2 часа раньше UTC). Используйте время UTC для отметки времени событий.

0

Другие решения

хорошо, ребята, я нашел решение, добавив эту строку вместо time() функция php. следуя этому пример cloudWatchLogs.

'timestamp' =>  round(microtime(true) * 1000),

Я надеюсь, что это может помочь кому-то в будущем, спасибо.

11

По вопросам рекламы [email protected]