привет, ребята, я пытаюсь поставить Log on 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) } } }
может помочь мне понять, что означает ["rejectLogEventsInfo"] => array (1) {["tooOldLogEventEndIndex"] => int (1), я буду очень благодарен за помощь.
Ваша ошибка говорит вам, что используемая вами метка времени не подходит.
http://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutLogEvents.html
Из документа:
Ни одно из событий журнала в партии не может превышать 2 часа в будущем.
Ни одно из событий журнала в партии не может быть старше 14 дней или периода хранения группы журналов.
Если текущее время и текущее время верны, вы можете находиться в другом часовом поясе (это больше, чем на 2 часа раньше UTC). Используйте время UTC для отметки времени событий.
ok, ребята, я нашел решение, добавляющее эту строку вместо функции time()
php. следуя этому примеру cloudWatchLogs .
'timestamp' => round(microtime(true) * 1000),
Я надеюсь, что это может помочь кому-то в будущем.