개발환경에 문제가 생겨 influxdb를 다시 설치하였다. 그리고 언제나처럼 influxdb ui에 들어가서 api token 을 확인하려고 하니... 왠걸...안보인다... ㅎ admin token이 생성되어 있지만, token 확인 불가능 그래서 열심히 찾아봤고, 그 내용을 정리한다. 사전 준비 사항 - influxd 설치 - influx 설치 token 확인 방법 1. influx에 config 설정 influx 가 설치된 경로로 진입하여, config 파일을 생성한다. config 명은 default로 할 경우, influx 실행 시, 따로 config 명을 입력하지 않아도 되며, host-url, org, token 은 각자 본인에 맞게 작성하도록 한다. ※ token 확인하려는데, token을..
spring boot 프로젝트에 influxdb 를 연동해야 했다. spring boot 프로젝트는 java 언어로 작성되어 있었으며, build 툴은 gradle 이었다. 이미 spring boot 프로젝트에 influxdb-client-java, flux-dsl 라이브러리가 설치되어 있었고, 큰 문제 없이 사용하고 있었다. 그런데 기능을 추가하면서 필요한 기능이 생겼고, 해당 기능을 사용하려니, flux-dsl 의 버전이 낮아 기능을 제공하지 않았다. 그래서 기존 4.xx -> 6.5.0 으로 변경했다. implementation 'com.influxdb:influxdb-client-java:6.5.0' // https://mvnrepository.com/artifact/com.influxdb/flu..
개발하는 중에, java를 이용해서 influxdb 에 저장된 데이터를 조회할 일이 있었다. influxdb의 공식 github을 찾아보니 flux-dsl 라이브러리가 있었고, 해당 라이브러리는 좀 더 편리하게 query 문을 작성할 수 있게 제공하였다. 그래서 해당 라이브러리를 이용하여 쿼리문을 작성하던 중, filter에서 문제가 발생하였다. 여러 조건으로 filter를 적용하여, query 문을 작성했는데, 첫 filter 만 적용되고, 나머지는 적용되지 않았다. 초기 코드 위의 코드는 초기 작성한 코드 였으며, 이미지와 같이 filter를 2번 작성하였다. 왜냐하면, influxdb ui에서는 script 에 filter를 여러 번 작성하여도, 조건에 맞춰서 검색이 되었기 때문이다. 그런데, sc..
influxd를 실행시키고, influx-client-java를 이용하여, influxdb에 접근하려고 하였다. 그런데, connection refued 에러가 발생하였고, 이 에러 해결을 위해 이틀을 고생했다. 처음부터 connection 거절 에러가 발생한 건 아니고, influx-client-java 최신버전을 받았더니, kotlin의 특정 클래스가 없다고 하고, 그래서 버전 다운을 했더니 connection 문제가 발생하였다. 결론부터 말하자면, influxdb는 기본적으로 localhost:8086으로 실행되는데, 이를 localhost가 아닌 특정 ip로 실행했더니, 정상적으로 connection을 맺었다. 해결방법 influxd 에 특정 ip 등 속성들을 설정하기 위해서는... 기본적으로 i..
sql 같은 경우에는 show databases 하면 보이는걸..... 한참 찾았다... 계속 show measurement가 있던데(influxdb1.x)... 안되고... 열심히 검색하다가 안되서, influx chronograf(influx UI) 에서 functions 하나하나 쳐다보다가 발견했다. 나로써는 힘들게 찾아낸 내용이라 잊어버릴까봐 작성해 놓는다. 특정 bucket 안에 있는 measurement 조회 import "influxdata/influxdb/schema" schema.measurements(bucket:[bucket 명]); measurement의 TAG Keys 조회 import "influxdata/influxdb/schema" schema.measurementTagKey..
https://docs.influxdata.com/influxdb/v2.1/api/ InfluxDB v2.1 API documentation docs.influxdata.com 예시) Write data - Postman 으로 데이터 전송 필수 입력사항 Query Parameters - bucket : 데이터를 저장하고자 하는 bucket 명 - org : bucket 생성할 때 입력한 org 명 Header Parameters Authorization : bucket 을 생성하면 API 키가 생성되는데, 앞에 "Token "+API 키 입력해야 함. (Token을 붙히지 않아서 고생 쫌 했음...) body line protocol에 맞춰서 데이터 전송 ※아래와 같은 데이터 타입을 사용함
influxdb를 테스트하고 있어서, 생성한 measurement를 삭제해야 하는데... 괜찮은 방법을 찾지 못했다. influx에서 column을 삭제하는 방법으로 measurment를 drop하는 방법이 있는데... https://docs.influxdata.com/flux/v0.x/stdlib/universe/drop/#tables drop() function | Flux 0.x Documentation drop() functionThe drop() function removes specified columns from a table. Columns are specified either through a list or a predicate function. When a dropped column i..
※InfluxDB 2.1 https://docs.influxdata.com/influxdb/v2.1/query-data/get-started/query-influxdb/#1-define-your-data-source Query InfluxDB with Flux | InfluxDB OSS 2.1 Documentation docs.influxdata.com 모든 Flux 쿼리는 아래와 같은 단계가 필요하다. 1. data source 2. time range 3. data filters 입력) test1,sensor=humi_temp_sensor humidity_value=30,temperatrue_value=15 1642101292000000000 //Syntax [,=[,=]] =[,=] [] 쿼리) _..