Call Custom-Beats functions from another language than go


I'm currently writing a custom Beat. However, the data I want to push with the Beat, I receive via a C# program. I dont want to store the data and then read it via filebeat because the beat is running on something like a gateway where I dont have much storage. Thus, I'd like to call the publish function of the beater in the best case via C# (C is also fine).

I've found out, that it is possible to export functions via the comment: //export functionname.
However, this is not trivial for the Beat, because the custom Beat contains methods to a struct. In order to call these methods from another language, I also need to export the struct. To export the struct, I have to export the config.Config struct and beat.Client interface, which is cumbersome, if it is possible at all.

Is there any other way to call functions of a custom Beat from another language other than exporting them?


Best regards,