Si también necesita ser notificado sobre DELETES y eliminar el registro respectivo en Elasticsearch, es cierto que la entrada jdbc de Logstash no ayudará. Tendría que usar una solución que funcione alrededor del binlog como sugerido aquí
Sin embargo, si aún desea utilizar la entrada jdbc de Logstash, lo que podría hacer es simplemente eliminar registros en PostgreSQL, es decir, crear una nueva columna BOOLEAN para marcar sus registros como deleted
. La misma bandera existiría entonces en Elasticsearch y puede excluirlos de sus búsquedas con un simple term
consulta sobre el deleted
campo.
Siempre que necesite realizar alguna limpieza, puede eliminar todos los registros marcados como deleted
tanto en PostgreSQL como en Elasticsearch.