Как я могу восстановить индекс с logstash - PullRequest
0 голосов
/ 28 марта 2020

У меня есть индекс эластичного поиска. Этот индекс построен с logsta sh

Вот мой файл конфигурации logsta sh:

input 
    {
      jdbc 
      {
        jdbc_driver_library => "/usr/share/java/mysql-connector-java.jar"
        jdbc_driver_class => "com.mysql.jdbc.Driver"
        jdbc_connection_string => "jdbc:mysql://localhost:3306"
        jdbc_user => "mysqluser"
        jdbc_password => "mysqlpassword"
        record_last_run => true
        use_column_value => true
        tracking_column => id
        schedule => "* * * * *"
        last_run_metadata_path => "/home/user/last_run"
        statement => "SELECT field1,field2 FROM mydb.mytable WHERE id > :sql_last_value"
      }
    }
    output 
    {
      elasticsearch 
      {
        index => "idx1"
        document_id => "%{id}"
      }
    }

Он работал нормально в течение нескольких месяцев.

Но мой индекс был удален. Я не знаю как и почему, но я потерял все в idx1.

Logsta sh все еще работает. Таким образом, новые записи вставляются в индекс.

Я хочу удалить индекс и выполнить полный запрос без предложения WHERE.

Вот моя проблема:

У меня нет прав на запись в файл / home / user / last_run и файл конфигурации.

Мои вопросы:

  • Чем можно объяснить, что индекс был удален?
  • Как я могу перестроить индекс вручную. Есть ли способ запустить logsta sh (или другой инструмент) из командной строки и попросить его повторить запрос?

Спасибо

...