# Logstash経由でのレコード転送が不完全に繰り返される

**URL:** <https://discuss.elastic.co/t/logstash/226507>\
**Category:** 日本語による質問・議論はこちら\
**Created:** [April 4, 2020, 10:42am UTC](https://discuss.elastic.co/t/logstash/226507 "2020-04-04T10:42:38Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![sogaoh](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/sogaoh/32/65166_2.png) [@sogaoh](https://discuss.elastic.co/u/sogaoh)\
**Post date:** [April 4, 2020, 10:42am UTC](https://discuss.elastic.co/t/logstash/226507/1 "2020-04-04T10:42:38Z")

</div>

> [@RDS -\> (Logstash) -\> Elasticsearch の取り込みができない](https://discuss.elastic.co/t/rds-logstash-elasticsearch/225406):
>
> バージョン： logstash:7.6.1 ( [https://hub.docker.com/\_/logstash?tab=tags](https://hub.docker.com/_/logstash?tab=tags) ) Logstash Pipeline を利用した AWS RDS (MySQL 5.7.12) からの AWS Elasticsearch(7.1) へのデータ流し込みでつまづいてしまっています。 おそらく該当のテーブルに geometry型のカラムがあるためではないかと思い、以下２点を試したのですが取り込みができていません。 取り込みが成功するための方法がわかれば教えていただきたいです。 (1) geometry型 のカラムを ST\_AsText でテキストにして取り込みを試みましたが、SQLの statement が長いためか 並び順の次の次くらいのカラムが存在しないというエラーになってしまいました。 [ERROR][logstash.inputs.jdbc][(問題のテーブル)] Java::JavaSql::SQLSyntaxErrorException: Unknown column '(エラーになったカラム1)' i…

と同一の以下環境で `Logstash経由での400万件のレコード転送が240万件程しかされない`  
という状況となっており、打開策を模索しています。

- logstash:7.6.1 ( [Docker](https://hub.docker.com/_/logstash?tab=tags) )
- AWS RDS (MySQL 5.7.12)
- AWS Elasticsearch (7.1)

同様の状況にご経験がある、あるいは何か効果的な対策が浮かぶ、等あれば  
ご提示いただけると大変ありがたいと思い、投稿する次第です。  
よろしくお願いいたします。

---

<div class="post-metadata">

**Author:** ![sogaoh](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/sogaoh/32/65166_2.png) [@sogaoh](https://discuss.elastic.co/u/sogaoh)\
**Post date:** [April 4, 2020, 10:43am UTC](https://discuss.elastic.co/t/logstash/226507/2 "2020-04-04T10:43:56Z")

</div>

これまでに試してみたことは以下ですが結果変わらず不首尾です。

- statement の SQL の ORDER BY を ASC から DESC に変更
- /usr/share/logstash/config/pipelines.yml で  
queue.type: persisted を設定（既定は memory）
- queue.max\_byte, queue.page\_capacity を倍以上に増やす  
(1gb-\>2gb, 64mb-\>256mb)
- queue.checkpoint. の acks と writes を 0 に
- jvm.options の Xmsを2倍・Xmxを3倍に
- pipeline.batch.size を2倍に

参照した主な情報

- [https://www.elastic.co/guide/en/logstash/current/persistent-queues.html](https://www.elastic.co/guide/en/logstash/current/persistent-queues.html)
- [https://www.elastic.co/guide/en/logstash/7.6/logstash-settings-file.html](https://www.elastic.co/guide/en/logstash/7.6/logstash-settings-file.html)

---

<div class="post-metadata">

**Author:** ![sogaoh](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/sogaoh/32/65166_2.png) [@sogaoh](https://discuss.elastic.co/u/sogaoh)\
**Post date:** [April 4, 2020, 10:49am UTC](https://discuss.elastic.co/t/logstash/226507/3 "2020-04-04T10:49:26Z")

</div>

該当の pipeline で絞り込むと以下のようなログ出力になっています。

```auto
・・・
[INFO][logstash.inputs.jdbc][xxxx_yyyyyys] (143.899960s) SELECT * FROM (SELECT *, UNIX_TIMESTAMP(updated_at) AS unix_ts_in_secs FROM xxxx_yyyyyys WHERE (UNIX_TIMESTAMP(updated_at) > 0 AND updated_at < NOW()) ORDER BY updated_at ASC) AS `t1` LIMIT 100000 OFFSET 2200000,
[INFO][logstash.inputs.jdbc][xxxx_yyyyyys] (146.844210s) SELECT * FROM (SELECT *, UNIX_TIMESTAMP(updated_at) AS unix_ts_in_secs FROM xxxx_yyyyyys WHERE (UNIX_TIMESTAMP(updated_at) > 0 AND updated_at < NOW()) ORDER BY updated_at ASC) AS `t1` LIMIT 100000 OFFSET 2300000,
[INFO][logstash.inputs.jdbc][xxxx_yyyyyys] (0.003917s) SELECT version(),
[INFO][logstash.inputs.jdbc][xxxx_yyyyyys] (0.003362s) SELECT version(),
[INFO][logstash.inputs.jdbc][xxxx_yyyyyys] (3.283475s) SELECT count(*) AS `count` FROM (SELECT *, UNIX_TIMESTAMP(updated_at) AS unix_ts_in_secs FROM xxxx_yyyyyys WHERE (UNIX_TIMESTAMP(updated_at) > 0 AND updated_at < NOW()) ORDER BY updated_at ASC) AS `t1` LIMIT 1,
[INFO][logstash.inputs.jdbc][xxxx_yyyyyys] (4.238177s) SELECT * FROM (SELECT *, UNIX_TIMESTAMP(updated_at) AS unix_ts_in_secs FROM xxxx_yyyyyys WHERE (UNIX_TIMESTAMP(updated_at) > 0 AND updated_at < NOW()) ORDER BY updated_at ASC) AS `t1` LIMIT 100000 OFFSET 0
・・・

```

---

<div class="post-metadata">

**Author:** ![sogaoh](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/sogaoh/32/65166_2.png) [@sogaoh](https://discuss.elastic.co/u/sogaoh)\
**Post date:** [April 14, 2020, 4:12pm UTC](https://discuss.elastic.co/t/logstash/226507/4 "2020-04-14T16:12:22Z")

</div>

この件、Logstash を載せる EC2 のスペックを上げた結果、解決できました。

(以前) t2.medium の Docker Swarm on EC2 × 3  
(対策) m4.large × 1 の Docker on EC2

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [May 12, 2020, 4:12pm UTC](https://discuss.elastic.co/t/logstash/226507/5 "2020-05-12T16:12:24Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
