CleverCloud / erlenmeyer

Erlenmeyer is a proxy used to parse common Open Source TimeSeries DataBase query endpoints like OpenTSDB, Prometheus/PromQL, InfluxQL or Graphite. Parsed queries are translated into WarpScript to produce native Warp 10 queries.
BSD 3-Clause "New" or "Revised" License
3 stars 2 forks source link

Error influxdb client of Grafana V10 and WARP10 3 #7

Open jtalbourdet opened 5 months ago

jtalbourdet commented 5 months ago

I have another problem with the influxdb client of Grafana V10 and WARP10 3

here is the error returned by Erlenmeyer

4|erlenmeyer           | time="2024-03-31T14:40:44Z" level=warning msg="parseSeparatorCondition - Default: %!s(<nil>) - <nil>"
4|erlenmeyer           | time="2024-03-31T14:40:44Z" level=error msg="Cannot unmarshal egress response: invalid character 'E' looking for beginning of value" error="Exception at 'exi5aJnHse0uwEPOUh2AtqqgXfYZ' =>AUTHENTICATE<= EVAL %!>(MISSING) IFTE' in section [TOP] (Unknown function 'AUTHENTICATE')" proto=influxQL
4|erlenmeyer           | time="2024-03-31T14:40:44Z" level=info msg=Access date="2024-03-31 14:40:44.282194045 +0000 UTC" host=erlenmeyer.service.hexa-ai.fr latency=3.771034ms method=POST path=/influxdb/query referer= remote=192.168.1.1 status=400 txn=38c01c171afe842aeab92b4f21f1603f2c37b9040b8ec2ece1cfbeff2296969a uri="/influxdb/query?db=&epoch=ms" user_agent=Grafana/10.2.2

Obviously I am aware that AUTHENTICATE does not work on WARP10 3 and I therefore tested

'3' MINREV <% 'token' 'CAPADD' EVAL %> <% 'token' 'AUTHENTICATE' EVAL %> IFTE

And it works correctly on my WARP10 instance

I think my problem lies more with this log

4|erlenmeyer           | time="2024-03-31T14:40:44Z" level=warning msg="parseSeparatorCondition - Default: %!s(<nil>) - <nil>"
aurrelhebert commented 5 months ago

Hello indeed the AUTHENTICATE isn't supported in Warp10 3. I applied a patch in https://github.com/CleverCloud/erlenmeyer/pull/6 too, does it fix it?

I may have miss one :smile:

aurrelhebert commented 5 months ago

To debug the parseSeparatorCondition do you have a query example?