Я установил пожарный шланг Kinesis и установил агент Kinesis, как описано в документации AWS . Я могу передать тестовые данные в корзину S3, но агент Kinesis не будет отправлять файлы .log. Я подозреваю, что проблема с подключением агента к пожарному шлангу.
Мой /etc/aws-kinesis/agent.json
файл находится ниже. Я также пробовал с "firehose.endpoint"
без https://
, но я до сих пор не могу получить данные.
Я убедился, что служба aws-kinesis-agent запущена.
Я не использую kinesis.endpoint / kinesisStream, но я оставил поток в файле agent.json. Может ли это быть проблемой?
Чего мне не хватает?
{
"cloudwatch.emitMetrics": true,
"kinesis.endpoint": "",
"firehose.endpoint": "https://firehose.us-west-2.amazonaws.com",
"flows": [
{
"filePattern": "/home/ec2-user/src/Fake-Apache-Log-Generator/*.log*",
"kinesisStream": "yourkinesisstream",
"partitionKeyOption": "RANDOM"
},
{
"filePattern": "/home/ec2-user/src/Fake-Apache-Log-Generator/*.log*",
"deliveryStream": "apachelogfilesdeliverystream"
}
]
}
EDIT:
В файле журнала на /var/log/aws-kinesis-agent/aws-kinesis-agent.log
показано 0 записей, которые были проанализированы. Сообщение в журнале привело меня к этой записи , и я сделал рекомендуемые исправления. Кроме того, мне пришлось удалить поток для kinesis из файла /etc/aws-kinesis/agent.json, чтобы избежать исключения, которое отображается в файлах журнала.
Суть в том, что aws-kinesis-agent не может читать файлы из / home / ec2-user / или его подкаталогов, и вам нужно исправить файл agent.json.