# Node-red influxdb json insert

**URL:** <https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718>\
**Category:** General\
**Created:** [12 January 2019 14:41 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718 "2019-01-12T14:41:42Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![turkdoktoru](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/turkdoktoru/32/5111_2.png) [@turkdoktoru](https://discourse.nodered.org/u/turkdoktoru)\
**Post date:** [12 January 2019 14:41 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/1 "2019-01-12T14:41:42Z")

</div>

Hello friends,

I'm sending a json line as follows. mqtt broker takes this line and translates as json.  
Then I want to save the line that I translated into influxdb but don't save it?

Json string: { "nodename": "cihaz1", "nodeabone": "123456", "endeks": "210" }

node:

[{"id":"555092b5.57397c","type":"tab","label":"Flow 1","disabled":false,"info":""},{"id":"ed2ad8b1.8df8e8","type":"mqtt in","z":"555092b5.57397c","name":"","topic":"/deneme/#","qos":"0","broker":"f35383e5.cc1d5","x":80,"y":100,"wires":[["1db520db.022daf"]]},{"id":"8b88bdbb.c410c","type":"influxdb out","z":"555092b5.57397c","influxdb":"41b4c349.309a4c","name":"","measurement":"sistem","precision":"","retentionPolicy":"","x":720,"y":80,"wires":[]},{"id":"1db520db.022daf","type":"json","z":"555092b5.57397c","name":"","property":"payload","action":"","pretty":false,"x":240,"y":100,"wires":[["79f3bb2e.9dbb34","8ea62c9b.6de7d"]]},{"id":"79f3bb2e.9dbb34","type":"debug","z":"555092b5.57397c","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":390,"y":120,"wires":[]},{"id":"8ea62c9b.6de7d","type":"function","z":"555092b5.57397c","name":"MQTT to InfluxDB","func":"var topic = msg.topic.split("/");\nvar dest = tokens[tokens.length-1];\n\nmsg.payload = topic[2] + \n",nodename=" + msg.payload.nodename + \n",nodeabone=" + msg.payload.nodeabone + \n" endeks=" + msg.payload.endeks;\n\nreturn msg;","outputs":1,"noerr":0,"x":410,"y":80,"wires":[["2498d973.882296","8b88bdbb.c410c"]]},{"id":"2498d973.882296","type":"debug","z":"555092b5.57397c","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":610,"y":120,"wires":[]},{"id":"f35383e5.cc1d5","type":"mqtt-broker","z":"555092b5.57397c","name":"centos","broker":"192.168.241.132","port":"1883","clientid":"node-red","usetls":false,"verifyservercert":true,"compatmode":true,"keepalive":"15","cleansession":true,"birthTopic":"","birthQos":"0","birthRetain":"false","birthPayload":"","closeTopic":"","closePayload":"","willTopic":"","willQos":"0","willRetain":"false","willPayload":""},{"id":"41b4c349.309a4c","type":"influxdb","z":"","hostname":"192.168.241.132","port":"8086","protocol":"http","database":"SAYACSISTEMI","name":"","usetls":false,"tls":""}]

---

<div class="post-metadata">

**Author:** ![ukmoose](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/ukmoose/32/13_2.png) [@ukmoose](https://discourse.nodered.org/u/ukmoose)\
**Post date:** [12 January 2019 14:52 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/2 "2019-01-12T14:52:17Z")

</div>

I’m guessing english isn’t your first language. But this doesn’t make sense.

> [@turkdoktoru](#):
>
> Then I want to save the line that I translated into influxdb but don't save it?

Also please read the post on how to add a flow to the forum, currently your flow can’t be imported.

---

<div class="post-metadata">

**Author:** ![turkdoktoru](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/turkdoktoru/32/5111_2.png) [@turkdoktoru](https://discourse.nodered.org/u/turkdoktoru)\
**Post date:** [12 January 2019 14:55 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/3 "2019-01-12T14:55:00Z")

</div>

yes.  
my english bad.  
i am using google translate

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [12 January 2019 14:57 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/4 "2019-01-12T14:57:13Z")

</div>

In case you can't find it the formatting post is [How to import a flow into the editor](https://discourse.nodered.org/t/how-to-import-a-flow-into-the-editor/895)  
You can go back and edit your the flow you have posted.

---

<div class="post-metadata">

**Author:** ![turkdoktoru](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/turkdoktoru/32/5111_2.png) [@turkdoktoru](https://discourse.nodered.org/u/turkdoktoru)\
**Post date:** [12 January 2019 14:59 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/5 "2019-01-12T14:59:08Z")

</div>

no no.  
does not save data in influxdb.  
How can I register json data into influxdb.

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [12 January 2019 15:01 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/6 "2019-01-12T15:01:48Z")

</div>

> [@turkdoktoru](#):
>
> How can I register json data into influxdb.

Edit your original post so we can import your flow and see what you are doing

Colin

---

<div class="post-metadata">

**Author:** ![turkdoktoru](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/turkdoktoru/32/5111_2.png) [@turkdoktoru](https://discourse.nodered.org/u/turkdoktoru)\
**Post date:** [12 January 2019 15:05 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/7 "2019-01-12T15:05:24Z")

</div>

json with mqtt.fx  
does not save the json object I sent to influxdb.

my function code:  
var topic = msg.topic.split("/");  
var dest = tokens[tokens.length-1];

msg.payload = topic[2] +  
",nodename=" + msg.payload.nodename +  
",nodeabone=" + msg.payload.nodeabone +  
" endeks=" + msg.payload.endeks;

return msg;

![mqttfx](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/2X/9/9d23a15d47808c1ef303b2b1618a8f63ec9af956.png)

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [12 January 2019 15:07 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/8 "2019-01-12T15:07:51Z")

</div>

Edit your earlier post as described in the link I posted so we can import your flow.

---

<div class="post-metadata">

**Author:** ![turkdoktoru](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/turkdoktoru/32/5111_2.png) [@turkdoktoru](https://discourse.nodered.org/u/turkdoktoru)\
**Post date:** [12 January 2019 15:18 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/9 "2019-01-12T15:18:42Z")

</div>

okay managed to save.  
how to update if same registration

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [12 January 2019 15:31 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/10 "2019-01-12T15:31:46Z")

</div>

> [@turkdoktoru](#):
>
> how to update if same registration

Since you haven't exported and pasted you current flow here it is not clear exactly what you are doing.  
If you post your current flow so we can see what you are doing then it might be easier to understand the question. Normally with influx you send new values and it gets appended to the existing data.

---

<div class="post-metadata">

**Author:** ![turkdoktoru](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/turkdoktoru/32/5111_2.png) [@turkdoktoru](https://discourse.nodered.org/u/turkdoktoru)\
**Post date:** [12 January 2019 15:34 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/11 "2019-01-12T15:34:53Z")

</div>

as an example: I want to update from device1 if any.  
I want to update when I send a few identical records

{ "nodename": "cihaz1", "nodeabone": "144", "endeks": "655477" }

![mqttfx](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/2X/b/b477714757461cc77abe207f2984af5d75da9b7e.png)

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [12 January 2019 15:45 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/12 "2019-01-12T15:45:00Z")

</div>

> [@turkdoktoru](#):
>
> I want to update when I send a few identical records

Sorry, I don't understand what you mean.

---

<div class="post-metadata">

**Author:** ![turkdoktoru](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/turkdoktoru/32/5111_2.png) [@turkdoktoru](https://discourse.nodered.org/u/turkdoktoru)\
**Post date:** [12 January 2019 16:02 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/13 "2019-01-12T16:02:33Z")

</div>

Let me explain.  
I want the registration to be updated if the same record is available.  
update if same nodename. don't make new record

cihaz1

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [12 January 2019 16:07 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/14 "2019-01-12T16:07:16Z")

</div>

Sorry, still don't understand. Possibly if you posted a typical sequence of data coming in and explain what you want to do with it.

---

<div class="post-metadata">

**Author:** ![turkdoktoru](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/turkdoktoru/32/5111_2.png) [@turkdoktoru](https://discourse.nodered.org/u/turkdoktoru)\
**Post date:** [12 January 2019 16:11 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/15 "2019-01-12T16:11:19Z")

</div>

![mqttfx](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/2X/5/5740c1b418792877a8637f7dcb9131e997e4a058.png)

---

<div class="post-metadata">

**Author:** ![turkdoktoru](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/turkdoktoru/32/5111_2.png) [@turkdoktoru](https://discourse.nodered.org/u/turkdoktoru)\
**Post date:** [12 January 2019 16:15 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/16 "2019-01-12T16:15:34Z")

</div>

UPDATE nodes  
SET endeks = endeks, ( **_Data received with json_** )  
nodeabone = nodeabone ( **_Data received with json_** )  
WHERE nodename = 'cihaz1';

What should I do to update a record with node-red in influxdb?  
Updating in SQL Server this way

---

<div class="post-metadata">

**Author:** ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)\
**Post date:** [12 January 2019 17:20 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/17 "2019-01-12T17:20:18Z")

</div>

> [@turkdoktoru](#):
>
> What should I do to update a record with node-red in influxdb?

I believe I outlined what you needed to do in the other thread.

---

<div class="post-metadata">

**Author:** ![shrickus](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/shrickus/32/517_2.png) [@shrickus](https://discourse.nodered.org/u/shrickus)\
**Post date:** [12 January 2019 18:36 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/18 "2019-01-12T18:36:20Z")

</div>

Influxdb is a _time series_ database, so every record is unique based on its timestamp -- in your example you are describing the typical behavior of sql databases, where records are stored based on "keys" like your nodename. Then incoming records can do either the insert or update for you, depending upon whether that key exists.

Perhaps for something this simple, you should be using mysql or sqlite instead?

---

<div class="post-metadata">

**Author:** ![turkdoktoru](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/turkdoktoru/32/5111_2.png) [@turkdoktoru](https://discourse.nodered.org/u/turkdoktoru)\
**Post date:** [12 January 2019 18:54 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/19 "2019-01-12T18:54:28Z")

</div>

Yeah @shrickus.  
How to update by specifying the nodename property Is there an example?

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [12 January 2019 21:08 UTC](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718/20 "2019-01-12T21:08:31Z")

</div>

By "update" do you mean pass in a new value for the item being stored to be added to the series of data there already? If so then it is the word update that is confusing us, as it suggests changing existing data rather than adding to it.  
If you are just adding to the data and if you are using node-red-contrib-influxdb then the Info tab for the node explains the various methods of specifying a particular field for the value being added.  
If you are just trying to provide a new value for one field then the simplest way is to pass an object in the payload of the form

```auto
{fieldname: value}

```

[Next page](https://discourse.nodered.org/t/node-red-influxdb-json-insert/6718.md?page=2)
