om_ssl loses data
This is an issue in the protocol since there in no acknowledgement built in (i.e. it is half-duplex). Any data that is sent is first passed to the OS and the OS will then accept it and it is then considered as sent. Now when the application is killed or the connection is forcibly terminated, all data that is still unsent by the OS (i.e. in the socket buffer) will be lost.
The solution to this problem is using another protocol that has acknowledgement in it. The NXLog Enterprise Edition has modules for this, there is also om_http and im_http. Some other tools have their own protocols , e.g. RELP in rsyslog, lumberjack in logstash, etc. Unfortunately there is no standard.