I'm looking to consolidate several log files into one index. I have a unique ID that I can use to link a document of one type to a document of the other. Is there a way to use Logstash to update existing documents by adding new fields without replacing/deleting the old fields?
Yep, you can specify that ID as the document ID when you upload to ES - https://www.elastic.co/guide/en/logstash/current/plugins-outputs-elasticsearch.html#plugins-outputs-elasticsearch-document_id
You should be able to do this using scripted updates. For this to work you need to enable scripting and provide the scripting settings in the Elasticsearch output plugin together with the document ID that Mark pointed out.