InfluxDB 2.x support

Hi all,

According to this page:
https://docs.influxdata.com/influxdb/v2.0/reference/api/influxdb-1x/

the latest release of influxdb includes fully backward compatible 1.x endpoints: has anyone tested this against an OSS InfluxDB 2 install (I am not interested in Cloud or https)?

Thanks!
Franck

Looks like they added that in November. I tried it before then and it did not work. I ended up using 1.8, which does support Flux QL and the old style too. I do need Flux QL for the math that it can do. But Grafana is pretty good with the math too, so it depends on what you want/need to do.

The Flux QL versions are likely different between 2.x and 1.8. Just depends on what you want.

influxDB2.0 is due out in a week or two. Just doing the documentation for a release and some final testing. The influx2.0 part has been working fine for quite awhile in the test systems. Uploading to the influxcloud, but OSS 2.0 should work OK.

I don’t think influxDB OSS2 runs on Raspberry Pi Buster because Buster is currently 32-bit right?

TBH I don’t really know what’s available for the RPi. I’m not sure there is any significant advantage for an IoTaWatt user in using 2.0 over 1.8 on a RPi anyway.

The support was added to enable large users to use influxcloud, which runs on AWS servers (and others). I’ve been looking a little at the cost of using influxcloud. I’ll have a better idea once I release this version and start uploading more data to it. There is a free account that will keep three months of data. That may be fine for anyone that wants to see current data from anywhere but is satisfied to go directly to IoTaWatt for historical data.

But I think that for the amount of data an IoTaWatt generates, the influxcloud will be fairly inexpensive. You won’t be able to completely get away from the RPi though because influxCloud requires HTTPS and IoTaWatt uses an NGINX proxy server on the LAN to do that.

I’m hoping to migrate to the new influx QL sometime in future which requires 64-bit RPi + OSS2. It’s not a significant advantage; more just for interest.

If you just want to kick the tires, I’d recommend opening a free account with influxdata. You would need to setup an NGINX proxy to support HTTPS, but that’s easy, especially if you already have a RPi running on your LAN. It’s incredibly fast, and has an integrated dashboard system to produce flex queries and plot them. Pretty much just what grafana does.

The free offering is full functioned, limited only to three month’s data. The next release of IoTaWatt will support native upload to 2.0.

That is awesome news, thanks!

I gave the compatibility API a quick try but apparently OSS 2.x support GET /query only and iotawatt starts with a POST /query to check the credentials (and probably later)… so that looks like a dead end.

Franck

You need to install the 64bit beta, quite a few people have been happy with it for over a year, it looks like the only remaining issues have to do with desktop and devices (esp. cameras).
See this optic among others:

https://www.raspberrypi.org/forums/viewtopic.php?f=66&t=306287&p=1832680#p1832680

So that would be using the IoTaWatt influx 1.x support in the current release. The new release will support the 2.0 token authentication as well as the bucket orientation as opposed to the database orientation. The new support also uses flux query to determine last upload.

Correct, I wasn’t aware that 2.x support was coming :slight_smile:

Any eta on the new release supporting influx 2.0?

Next week if all goes well.

I know many people like using the latest thing on the block. There are some really nice things about InfluxDB 2.0, It finally has some means of visualization that is built in. This is great for getting started, but probably does not offer the breadth and depth of capability that Grafana does. I know that when I first started looking at these tools they seemed very hard to understand and complex. Now that I have been playing with them for some time and have created some dashboards and looked at how others have done it, I know it can be even more complex. But, that complexity is very powerful and just because it supports many different ways of doing things, you don’t really have to use them all.

Back to 2.0 and FluxQL. It is great for when you need it. But, there is very little documentation on it and you have to think about the problem in the right way to get a flux solution to it. InfluxQL is more widely documented and MANY examples are easy to find. It is also frequently much faster. I have some queries that can take 10’s of seconds to complete. I really should run them as continuous queries to make it easier. I am running this on a Core i7 with 4 cores (but it mostly uses only one anyway). I am sure these queries would take a lot longer on a RPi.

I am using the 1.8 version which supports both Flux in the old InfluxQL queries and find it meets my needs. But, I will try out the support for 2.0 when it comes out. I’ll just create a new container for it.

I hear everything you are saying. So far, I’ve only run the cloud version which is powered by AWS. I don’t see this being a big RPi hit. That said, over many years I’ve watched many new products blossom as hardware capabilities continually improve. You have to aim ahead of a moving target.

Amen.

:nerd_face:

I can’t wait to give it a try!

While the release burns in on test systems, the [documentation]follow that link. Influx 1 and 2 are in the same “influx” chapter.

I’ve been using the free limited influxcloud version in testing. It’s pretty nice and has a devent dashboard that takes the sting out of converting to flux. To use it, you will need to setup a HTTPproxy using NGINX. That’s covered in the docs.

As I’m an impatient so-and-so, after getting my IotaWatt installed this morning, I spent half the afternoon hacking together some PowerShell to push power draw and power consumption data from IotaWatt into Influx 2.0. (I already had an Influx 2.0 OSS instance being used for other things.)

It has no error checking or no comments but it does appear to work. The script checks for the last entry in the Influx bucket and grabs the data from IotaWatt up until that point. I’m working on 60s aggregation for both draw and consumption on ten CTs. Anything over a 6 hour backlog generally throws a generic web request error; probably posting too much data. The script will work for both Influx 2.0 OSS and Cloud just by changing the target Influx URL property. And as it’s not the IotaWatt doing the heavy lifting, no HTTPS proxy required. In my environment at least, the script runs on both Windows 10 and Ubuntu 20.04.2 LTS running the latest stable snap release of PowerShell.

I don’t mean to replace the built-in support for Influx 2.0 that’s coming; I’ll almost certainly retire my script the moment the firmware pushes down to my unit. But if you want to have a play developing visualisations in Grafana, or plan to use Influx Cloud but cannot spin up an HTTPS proxy, maybe this could work. If you want the code, please let me know and I’ll stick the script up on GitHub.