Телеграф - входы.logparser проблемы - Грок не соответствует

Я пытаюсь отправить лог-файл на infxdb через телеграф.

Я нашел в веб-учебнике с примером на сайте: https://www.dev-eth0.de/blog/2016/12/07/grafana_fhem_influxdb.html

Я хочу добавить новые строки в файл журнала, так что теперь это выглядит так:

2018-04-16 13:19:37,225 INFO  [com.micro.mapper.EJBExceptionMapper] (default task-45) Not Found! Message: Contract version on date does not exist. 
2018-04-16 13:19:37,255 INFO  [com.micro.contract.service.PremiumEvolutionService] (default task-57) Premium evolution for contract 100134 started.
2018-04-16 13:19:37,255 INFO  [com.micro.contract.service.PremiumEvolutionService] (default task-57) Premium evolution for contract 100134 finished.
2018-04-16 13:19:39,105 WARNING [com.micro.contract.service.VersionService] (default task-53) Version for contract number: 100134 and valid on date: 2018-03-13T11:22:55.370 cannot be found. No entity found for query
2018-04-16 13:19:39,105 ERROR [org.jboss.as.ejb3.invocation] (default task-53) WFLYEJB0034: EJB Invocation failed on component VersionService for method public com.odateam.micro.contract.entity.VersionTrail com.odateam.micro.contract.service.VersionService.getVersion(java.lang.Long,java.time.LocalDateTime): javax.ejb.EJBTransactionRolledbackException: 1 constraint violation(s) occurred during method validation.
2016-12-07_21:16:38 Balkon_TX35DTH temperature: 146

Затем я добавил новый шаблон с именем MY_TEST, поэтому мой конфигурационный файл telegraf.conf выглядит следующим образом

[[inputs.logparser]]
  ## file(s) to tail:
  files = ["C:\\Program Files\\telegraf - Copy\\TestLog\\test.log"]  
  ## Read file from beginning.
  from_beginning = false
  ## Override the default measurement name, which would be "logparser_grok"
  name_override = "test_calculator"
  ## For parsing logstash-style "grok" patterns:
  [inputs.logparser.grok]
    patterns = ["%{TEMP}", "%{HUM}", "%{MY_TEST}"]
    measurement = "fhem"

custom_patterns = '''
      TEMP %{DATA:timestamp:ts-"2006-01-02_15:04:05"} %{DATA:room:tag} temperature: %{NUMBER:temperature:float}
      HUM %{DATA:timestamp:ts-"2006-01-02_15:04:05"} %{DATA:room:tag} humidity: %{NUMBER:humidity:float}
      MY_TEST %{DATA:timestamp:ts-"2006-01-02 15:04:05,000"} %{DATA:level:tag} [%{DATA:service:tag}] (%{DATA:task:tag}) %{DATA:message:tag}
    '''

[[outputs.influxdb]]  
## The full HTTP or UDP endpoint URL for your InfluxDB instance.
  urls = ["http://127.0.0.1:8086"] # required
  ## The target database for metrics (telegraf will create it if not exists).
  database = "telegraf" # required
  ## Write timeout (for the InfluxDB client), formatted as a string.
  timeout = "5s"

Теперь он импортирует только последнюю строку (ту, что "2016-12-07_21:16:38 Balkon_TX35DTH температура: 146"), которая также используется в руководстве, описанном в верхней ссылке.

И я получаю следующий вывод telegraf.log:

2018-04-19T11:05:50Z D! Output [influxdb] buffer fullness: 0 / 10000 metrics. 
2018-04-19T11:06:00Z D! Output [influxdb] buffer fullness: 0 / 10000 metrics. 
2018-04-19T11:06:10Z D! Output [influxdb] buffer fullness: 0 / 10000 metrics. 
2018-04-19T11:06:19Z D! Grok no match found for: "2018-04-16 13:19:37,225 INFO  [com.micro.mapper.EJBExceptionMapper] (default task-45) Not Found! Message: Contract version on date does not exist. "
2018-04-19T11:06:19Z D! Grok no match found for: "2018-04-16 13:19:37,255 INFO  [com.micro.contract.service.PremiumEvolutionService] (default task-57) Premium evolution for contract 100134 started."
2018-04-19T11:06:19Z D! Grok no match found for: "2018-04-16 13:19:37,255 INFO  [com.micro.contract.service.PremiumEvolutionService] (default task-57) Premium evolution for contract 100134 finished."
2018-04-19T11:06:19Z D! Grok no match found for: "2018-04-16 13:19:39,105 WARNING [com.micro.contract.service.VersionService] (default task-53) Version for contract number: 100134 and valid on date: 2018-03-13T11:22:55.370 cannot be found. No entity found for query"
2018-04-19T11:06:19Z D! Grok no match found for: "2018-04-16 13:19:39,105 ERROR [org.jboss.as.ejb3.invocation] (default task-53) WFLYEJB0034: EJB Invocation failed on component VersionService for method public com.odateam.micro.contract.entity.VersionTrail com.odateam.micro.contract.service.VersionService.getVersion(java.lang.Long,java.time.LocalDateTime): javax.ejb.EJBTransactionRolledbackException: 1 constraint violation(s) occurred during method validation."
2018-04-19T11:06:20Z D! Output [influxdb] buffer fullness: 1 / 10000 metrics. 
2018-04-19T11:06:20Z D! Output [influxdb] wrote batch of 1 metrics in 2.9999ms

Для всех других строк в моем файле журнала я получаю сообщение об ошибке "Grok не найдено совпадений для:". Неправильно ли я установил свой шаблон или я делаю что-то еще неправильно?

Кто-нибудь может дать мне подсказку, пожалуйста?

Спасибо Дамжан

0 ответов

Другие вопросы по тегам