当前位置: 首页 > news >正文

C#使用时序数据库 InfluxDB

一、安装

https://docs.influxdata.com/influxdb/v2/install/?t=Windows

image.png

解压后使用cmd运行

image.png
访问 localhost:8086

配置

第一次登入会初始化
image.png

配置登入账号

image.png

保存TOKEN

这个TOKEN用于后期代码链接访问数据库,忘记了只能删除重新生成

image.png
点击QUCK START进入管理页面
image.png
image.png

默认配置文件

windows:在用户文件夹下 C:\Users\Administrator.influxdbv2
linux: /etc/influxdb/influxdb.conf

二、C#调用

Load Data>Sources 选择c# 查看配置示例

image.png

创建一个控制台程序

安装InfluxDB客户端
image.png

创建链接
using System.Linq;
using System.Threading.Tasks;
using InfluxDB.Client;
using InfluxDB.Client.Api.Domain;
using InfluxDB.Client.Core;
using InfluxDB.Client.Writes;namespace Examples
{public class Examples{public static async Task Main(string[] args){// You can generate an API token from the "API Tokens Tab" in the UIvar token = Environment.GetEnvironmentVariable("INFLUX_TOKEN")!;const string bucket = "Test";const string org = "CC";using var client = new InfluxDBClient("http://127.0.0.1:8086", token);}}
}
写入数据

image.png

//方式一、使用WriteRecord
const string data = "mem,host=host1 used_percent=23.43234543";
using (var writeApi = client.GetWriteApi())
{writeApi.WriteRecord(data,bucket, org, WritePrecision.Ns );
}//方式二、使用WritePoint
var point = PointData.Measurement("mem").Tag("host", "host1").Field("used_percent", 23.43234543).Timestamp(DateTime.UtcNow, WritePrecision.Ns);using (var writeApi = client.GetWriteApi())
{writeApi.WritePoint(point,bucket, org);
}//方式三、使用实体类
var mem = new Mem { Host = "host1", UsedPercent = 23.43234543, Time = DateTime.UtcNow };using (var writeApi = client.GetWriteApi())
{writeApi.WriteMeasurement( mem,bucket, org, WritePrecision.Ns);
}[Measurement("mem")]
private class Mem
{[Column("host", IsTag = true)] public string Host { get; set; }[Column("used_percent")] public double? UsedPercent { get; set; }[Column(IsTimestamp = true)] public DateTime Time { get; set; }
}
最终测试代码
// See https://aka.ms/new-console-template for more information
using InfluxDB.Client;
using InfluxDB.Client.Api.Domain;
using InfluxDB.Client.Writes;Console.WriteLine("Hello, World!");
Environment.SetEnvironmentVariable("INFLUX_TOKEN", "O9I2Kpeg...kLPSrQLWhTiJCQPWy6HJFjN9hK33UoLnG34vfFdqZ5KmoDLS-kkw==");var token = Environment.GetEnvironmentVariable("INFLUX_TOKEN")!;
const string bucket = "Test";
const string org = "CC";using (var client = new InfluxDBClient("http://localhost", token))
{using (var writeApi = client.GetWriteApi()){while (true){var randon = new Random();var point = PointData.Measurement("mem").Tag("host", "host1").Field("used_percent", randon.Next(10, 100)) //可以添加多个字段.Field("memory_percent",randon.Next(0,10)).Timestamp(DateTime.UtcNow, WritePrecision.Ns);writeApi.WritePoint(point, bucket, org);Thread.Sleep(2000);}}
}
在管理页面查看数据

image.png
image.png

相关文章:

C#使用时序数据库 InfluxDB

一、安装 https://docs.influxdata.com/influxdb/v2/install/?tWindows 解压后使用cmd运行 访问 localhost:8086 配置 第一次登入会初始化 配置登入账号 保存TOKEN 这个TOKEN用于后期代码链接访问数据库,忘记了只能删除重新生成 点击QUCK START进入管理页面 …...

正则表达式:验证中英文长度限制16个字符(8个中文),支持中文字母数字或者下划线

1.中文字母数字或者下划线 2.长度限制16个字符(8个中文) html: <input class"form-control text" maxlength"17" name"name" placeholder"输入16个字符以内的备注名称" type"text" v-model.trim"remarkName" …...

kafka和rocketMq的区别

kafka topic 中每一个分区会有 Leader 与 Follow。Kafka 的内部机制可以保证 topic 某一个分区的 Leader 与 Follow 不在同一台机器上 Leader 节点承担一个分区的读写&#xff0c;Follow 节点只负责数据备份 如果 Leader 分区所在的 Broker 节点宕机&#xff0c;会触发主从节…...

Git推送本地代码到远程仓库

Git推送本地代码到远程仓库 1、首先需要安装Git&#xff0c;如果已经安装&#xff0c;请跳过。下载地址&#xff1a;https://git-for-windows.github.io/ 2、安装好git服务器后。首先找到你项目的文件夹&#xff0c;比如项目名称为Item&#xff0c;进入到这个文件夹&#xff0…...

OncePerRequestFilter详解

OncePerRequestFilter是什么 OncePerRequestFilter是Spring框架提供的一个过滤器&#xff0c;确保在一次HTTP请求期间只执行一次特定的过滤器逻辑。它继承了GenericFilterBean类&#xff0c;并实现了javax.servlet.Filter接口。在Spring框架中&#xff0c;过滤器是一种拦截器&…...

Accelerate 0.24.0文档 二:DeepSpeed集成

文章目录 一、 DeepSpeed简介二、DeepSpeed集成&#xff08;Accelerate 0.24.0&#xff09;2.1 DeepSpeed安装2.2 Accelerate DeepSpeed Plugin2.2.1 ZeRO Stage-22.2.2 ZeRO Stage-3 with CPU Offload2.2.3 accelerate launch参数 2.3 DeepSpeed Config File2.3.1 ZeRO Stage-…...

【系统架构设计】架构核心知识: 2.3 UML图

目录 一 UML 1 用例图 2 类图/对象图关系 3 活动图 4 顺序图 5 通信图...

2023年09月青少年软件编程(C语言)等级考试试卷(三级)

青少年软件编程&#xff08;C语言&#xff09;等级考试试卷&#xff08;三级&#xff09; 谁是你的潜在朋友 “臭味相投”——这是我们描述朋友时喜欢用的词汇。两个人是朋友通常意味着他们存在着许多共同的兴趣。然而作为一个宅男&#xff0c;你发现自己与他人相互了解的机会…...

SQLite3 数据库学习(一):数据库和 SQLite 基础

参考引用 SQL 必知必会SQLite 权威指南&#xff08;第二版&#xff09;关系型数据库概述 1. 数据库基础 1.1 什么是数据库 数据库&#xff08;database&#xff09;&#xff1a;保存有组织的数据的容器&#xff08;通常是一个文件或一组文件&#xff09; 可以将其想象为一个文…...

上机4KNN实验4

目录 编程实现 kNN 算法。一、步骤二、实现代码三、总结知识1、切片2、iloc方法3、归一化4、MinMaxScale&#xff08;&#xff09;5、划分测试集、训练集6、KNN算法 .py 编程实现 kNN 算法。 1、读取excel表格存放的Iris数据集。该数据集有5列&#xff0c;其中前4列是条件属性…...

产品经理如何保持核心竞争力?学会这些方法

如今&#xff0c;内卷的风已经吹到各行各业&#xff0c;产品经理也不例外。想要在内卷日益严重的环境中生存下来&#xff0c;产品经理就需要学会保持自己的核心竞争力。那么&#xff0c;产品经理要如何才能在内卷时代持续保持自己的核心竞争力呢&#xff1f; 1、建立快速学习的…...

终知人生苦短,何必自我为难

不是少年比他当年的那个目标更强&#xff0c;也不是他完全丧失了冲关过坎的勇气&#xff0c;而是他知道了自己能力的边界和极限&#xff0c;迫切需要外界的帮助。 不再自我设限&#xff0c;不再自我挑战&#xff0c;而是想用最简便、最快捷、最省精力的路径&#xff0c;解决掉困…...

C++阶段复习‘‘‘‘总结?【4w字。。。】

文章目录 前言类和对象C类定义和对象定义类成员函数C 类访问修饰符公有&#xff08;public&#xff09;成员私有&#xff08;private&#xff09;成员受保护&#xff08;protected&#xff09;成员 继承中的特点类的构造函数和析构函数 友元函数内联函数this指针指向类的指针类…...

嵌入式行业算青春饭吗?

今日话题&#xff0c;嵌入式行业算青春饭吗&#xff1f;嵌入式行业的技术要求确实非常广泛&#xff0c;需要深厚的知识广度和深度。这意味着入行门槛较高&#xff0c;我们需要了解不仅是软件和硬件&#xff0c;还要熟悉底层接口和硬件信号的处理方式&#xff0c;了解数据在计算…...

【C++】非类型模板参数 | array容器 | 模板特化 | 模板为什么不能分离编译

目录 一、非类型模板参数 二、array容器 三、模板特化 为什么要对模板进行特化 函数模板特化 补充一个问题 类模板特化 全特化与偏特化 全特化 偏特化 四、模板为什么不能分离编译 为什么 怎么办 五、总结模板的优缺点 一、非类型模板参数 模板参数分两类&#x…...

解决 Django 开发中的环境配置问题:Windows 系统下的实战指南20231113

简介&#xff1a; 在本文中&#xff0c;我想分享一下我最近在 Windows 环境下进行 Django 开发时遇到的一系列环境配置问题&#xff0c;以及我是如何一步步解决这些问题的。我的目标是为那些可能遇到类似困难的 Django 开发者提供一些指导和帮助。 问题描述&#xff1a; 最近…...

C语言仅凭自学能到什么高度?

今日话题&#xff0c;C语言仅凭自学能到什么高度&#xff1f;学习C语言的决定我确实非常推荐&#xff0c;毕竟它是编程领域的“通用工具”&#xff0c;初学者可以尝试并在发现编程的乐趣后制定长期学习计划。至于能够达到何种高度&#xff0c;这实在无法准确回答。即使是经验丰…...

Python爬虫过程中DNS解析错误解决策略

在Python爬虫开发中&#xff0c;经常会遇到DNS解析错误&#xff0c;这是一个常见且也令人头疼的问题。DNS解析错误可能会导致爬虫失败&#xff0c;但幸运的是&#xff0c;我们可以采取一些策略来处理这些错误&#xff0c;确保爬虫能够正常运行。本文将介绍什么是DNS解析错误&am…...

vue devtools 调试工具安装配置

方式一&#xff1a;在谷歌商店下载安装 打开Google Chrome浏览器 --> 右上角三个点图标 --> 更多工具 --> 扩展程序 --> 在 Chrome 应用商店中查找扩展程序和主题背景 方式二&#xff1a;下载插件安装包自行配置 下载devtools安装包 使用git下载&#xff0c;内含…...

kube-bench-CIS基准的自动化扫描工具学习

仓库地址&#xff1a;GitHub - aquasecurity/kube-bench: Checks whether Kubernetes is deployed according to security best practices as defined in the CIS Kubernetes Benchmark kube-bench,检查 Kubernetes 是否根据 CIS Kubernetes 基准中定义的安全最佳实践部署,下载…...

19c补丁后oracle属主变化,导致不能识别磁盘组

补丁后服务器重启&#xff0c;数据库再次无法启动 ORA01017: invalid username/password; logon denied Oracle 19c 在打上 19.23 或以上补丁版本后&#xff0c;存在与用户组权限相关的问题。具体表现为&#xff0c;Oracle 实例的运行用户&#xff08;oracle&#xff09;和集…...

Leetcode 3576. Transform Array to All Equal Elements

Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接&#xff1a;3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到&#xf…...

Zustand 状态管理库:极简而强大的解决方案

Zustand 是一个轻量级、快速和可扩展的状态管理库&#xff0c;特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...

练习(含atoi的模拟实现,自定义类型等练习)

一、结构体大小的计算及位段 &#xff08;结构体大小计算及位段 详解请看&#xff1a;自定义类型&#xff1a;结构体进阶-CSDN博客&#xff09; 1.在32位系统环境&#xff0c;编译选项为4字节对齐&#xff0c;那么sizeof(A)和sizeof(B)是多少&#xff1f; #pragma pack(4)st…...

el-switch文字内置

el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...

【论文笔记】若干矿井粉尘检测算法概述

总的来说&#xff0c;传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度&#xff0c;通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...

基于Docker Compose部署Java微服务项目

一. 创建根项目 根项目&#xff08;父项目&#xff09;主要用于依赖管理 一些需要注意的点&#xff1a; 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件&#xff0c;否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...

linux 下常用变更-8

1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行&#xff0c;YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID&#xff1a; YW3…...

MySQL中【正则表达式】用法

MySQL 中正则表达式通过 REGEXP 或 RLIKE 操作符实现&#xff08;两者等价&#xff09;&#xff0c;用于在 WHERE 子句中进行复杂的字符串模式匹配。以下是核心用法和示例&#xff1a; 一、基础语法 SELECT column_name FROM table_name WHERE column_name REGEXP pattern; …...

【Go语言基础【13】】函数、闭包、方法

文章目录 零、概述一、函数基础1、函数基础概念2、参数传递机制3、返回值特性3.1. 多返回值3.2. 命名返回值3.3. 错误处理 二、函数类型与高阶函数1. 函数类型定义2. 高阶函数&#xff08;函数作为参数、返回值&#xff09; 三、匿名函数与闭包1. 匿名函数&#xff08;Lambda函…...