grafana / grafana-csv-datasource

A data source for loading CSV data into Grafana.
https://grafana.com/plugins/marcusolsson-csv-datasource
Apache License 2.0
72 stars 28 forks source link

Support for FreeBSD? #18

Closed Mannekino closed 3 years ago

Mannekino commented 3 years ago

Hi, I'm running Grafana inside a Jail on my TrueNAS server and wanted to try this plugin out. But in the log I see the following error:

t=2021-01-18T17:39:51+0100 lvl=eror msg="Failed to start plugin" logger=plugins.backend pluginId=marcusolsson-csv-datasource error="fork/exec /var/db/grafana/plugins/marcusolsson-csv-datasource/gpx_csv-datasource_freebsd_amd64: no such file or directory"

And indeed there is no such file, so I figure this hasn't been made available yet for FreeBSD. Do you plan on making that file so I can test this?

Thank you for your reply.

marcusolsson commented 3 years ago

I'm currently using the plugin SDK to build the backend binaries, which means that this plugin supports the same architectures as the others.

https://github.com/grafana/grafana-plugin-sdk-go/blob/66439af0e4c52a4f854fa1a479d16b14067ea4da/build/common.go#L128-L151

There's nothing stopping us from building binaries for other architectures in addition to the ones supported by the SDK. I'm generally reluctant to adding custom build scripts for additional architectures. I would much rather have this added to the SDK.

That being said, if there are FreeBSD users that really would like to use this plugin, and the SDK devs don't want to add it, I'll consider making an exception!

Long term, I'd prefer a pull request to the grafana-plugin-sdk-go. Short term, you could try building the plugin yourself to try it out first. It would be unsigned, but if you just want to test it, it shouldn't be an issue.

Mannekino commented 3 years ago

I don't mind it being unsigned, but I'm not a power user to such a degree that I know how to build the plugin myself unfortunately. I've never done that and my experience with FreeBSD is limited to what I've done with FreeNAS now TrueNAS and creating Jails to run some applications. If there are instructions somewhere on how to do this I'm certainly willing to give it a try. I have another CVS source I want to visualize in Grafana.

marcusolsson commented 3 years ago

I understand. I'll see if I can build a one-off build with a FreeBSD binary. Could you let me know what architecture the server is using? amd64?

Mannekino commented 3 years ago

Yes, here is the output from uname -a:

FreeBSD freenas.<domain> 12.2-RELEASE-p2 FreeBSD 12.2-RELEASE-p2 663e6b09467(HEAD) TRUENAS amd64

If I can help in any way let me know.

I've read comments in the past from people who were able to build something inside a Jail since you can't install packages on the TrueNAS server itself due to it being an appliance and the package manager being disabled. You can create a Jail however and install packages in there.

Mannekino commented 3 years ago

Hi, I was wondering if you managed to have time for the FreeBSD build yet? I've been wanting to try this out.

marcusolsson commented 3 years ago

Could you try this one? It's not signed however, so you'd have to edit your grafana.ini to allow it using allow_loading_unsigned_plugins. Let me know if it works

https://github.com/marcusolsson/grafana-csv-datasource/releases/download/v0.3.3/marcusolsson-csv-datasource-0.3.3.freebsd.zip

Mannekino commented 3 years ago

Thanks, I tried it and it's working!