liriming
2024-08-26 aecc4908e1f2861d2dab1929a88f9053238b2dd2
提交 | 用户 | 时间
a6de49 1 package com.iailab.module.data.influxdb.common.config;
H 2
585be5 3 import com.iailab.framework.tenant.core.context.TenantContextHolder;
a6de49 4 import com.influxdb.client.InfluxDBClient;
H 5 import com.influxdb.client.InfluxDBClientFactory;
6 import org.slf4j.Logger;
7 import org.slf4j.LoggerFactory;
8 import org.springframework.beans.factory.annotation.Value;
9 import org.springframework.stereotype.Component;
10
11 /**
12  * @author PanZhibao
13  * @Description
14  * @createTime 2023年04月25日 17:13:00
15  */
16 @Component
17 public class InfluxDBInstance {
18
19     @Value("${influx-db.org}")
20     public String org;
21
22     @Value("${influx-db.token}")
23     public String token;
24
25     @Value("${influx-db.url}")
26     public String url;
585be5 27
28     private final static String BUCKET_NAME = "tenant_";
a6de49 29
H 30     private Logger logger = LoggerFactory.getLogger(getClass());
31
32     private InfluxDBClient client;
33
34     public InfluxDBClient getClient() {
35         try {
36             if (client == null) {
37                 client = InfluxDBClientFactory.create(url, token.toCharArray());
38             }
39         } catch (Exception ex) {
40             ex.printStackTrace();
41             logger.error("创建InfluxDBClient失败!");
42         }
43         return client;
44     }
45
585be5 46     public String getBucket() {
47         return BUCKET_NAME + TenantContextHolder.getRequiredTenantId();
48     }
0fbd01 49
a6de49 50 }