绝望的C#:看得出,很多官方库也没经过大脑——InfluxDB.Client(这可是官方库哦)

初级代码游戏的专栏介绍与文章目录-CSDN博客

我的github:codetoys,所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。

这些代码大部分以Linux为目标但部分代码是纯C++的,可以在任何平台上使用。


        今天尝试使用influxdb。用的官方C#客户端InfluxDB.Client,代码也是来自官方教程。

        首先呢,下载安装都挺好,按名字搜索嘛,然后就是复制粘贴官方代码,就在web管理界面上嘛。(这篇是吐槽,不是新手教程)

        编译,发现函数参数顺序不正确:

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(bucket, org, point);现在的版本是point在第一个
}

        这种小调整嘛,可以理解,随手就改过来了嘛。

        然后执行代码,挺好,一切正常。

        然后就要写我自己的业务代码了,我一行数据好多字段的,要在循环里面加,大概就是这样:

var point = PointData.Measurement("mem").Tag("host", "host1")//.Field("used_percent", 23.43234543)这句就不要了.Timestamp(DateTime.UtcNow, WritePrecision.Ns);foreach(...)
{point.Field(name,value);在这里添加每个字段
}using (var writeApi = client.GetWriteApi())
{writeApi.WritePoint(bucket, org, point);
}

        小意思,是吧?然后这个代码就死活不工作了,插不了任何数据。

        考虑会不会是我添加的tag和field有问题啊,各种替换啊,替换到测试代码正确,正式代码就是不行。具体就略了,大家都是程序员,很懂这种状态。

        最后去看了看相关调用的源代码:

	public PointData Field(string name, string value){return PutField(name, value);}private PointData PutField(string name, object value){Arguments.CheckNonEmptyString(name, "Field name");ImmutableSortedDictionary<string, object> immutableSortedDictionary = _fields;if (immutableSortedDictionary.ContainsKey(name)){immutableSortedDictionary = immutableSortedDictionary.Remove(name);}immutableSortedDictionary = immutableSortedDictionary.Add(name, value);return new PointData(_measurementName, Precision, _time, _tags, immutableSortedDictionary);无语了,这里竟然是返回一个新对象!}

        额滴个神啊!Field()调用最后竟然是返回一个新对象!


(吐槽结束)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/805436.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用MobaXterm/winTerm之类的工具连接虚拟机时报错Permission denied或者Access denied的解决办法

一、虚拟机设置&#xff1a; 1.将点击【编辑】---> 【虚拟网络编辑器】 2.添加VMnet6 1&#xff09;点击【DHCP设置】--->添加网络--->选中【仅主机模式】【将主机虚拟适配器连接到此网络】 2&#xff09;子网ip写“192.168.66.0” 3&#xff09;点击右下角【应用…

精准识别更安全,横扫六大手指难题的鹿客指脉锁S6 Max来了

极致的自然动作、极致的精准识别、识别时间600毫秒……在4月10日鹿客指脉锁S6 Max发布会上&#xff0c;高密度的关键词让关注发布会的所有人都意识到&#xff0c;下一代智能锁真的来了。 鹿客也将新品S6 Max称为“行业内、搭载全新一代指脉技术的革新之作”。 1、十年回答&…

Web 前端性能优化之八:前端性能检测实践

五、前端性能检测实践 1、常用的检测工具 Lighthouse、Chrome开发者工具中与性能检测相关的一些工具面板、页面加载性能分析工具PageSpeed Insights、专业的性能检测工具WEBPAGETEST等 1、Chrome 任务管理器 通过Chrome任务管理器我们可以查看当前Chrome浏览器中&#xff0…

Git常用命令以及异常信息汇总

常用命令&#xff1a; 查看本地分支&#xff1a; git branch 异常信息汇总 异常信息&#xff1a; Git&#xff1a;error: remote origin already exists 原因分析&#xff1a;远程源已经存在。 需要进行以下操作&#xff1a; 1、查看远程库的信息: git remo…

蓝桥杯真题 字串简写 前缀和

&#x1f468;‍&#x1f3eb; Acwing 字串简写 输入 4 abababdb a b输出 6&#x1f496; 前缀和 import java.util.Scanner;public class Main {static int N (int) 5e5 10;static int[] l new int[N];// l[i] 表示 i 以及 i 左边包含多少个字符 apublic static void …

springboot 问题整合

springboot 启动后访问报错 问题:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): 原因:mybatis 的全局配置文件和 sql 映射文件没有写 解决:在 application.yml 中添加 mybatis 配置 mybatis:# 全局配置文件config-location: classp…

Hugo 配置个人博客

下载 Hugo 下载地址: https://www.gohugo.org/ 或者点击百度云链接下载安装包: 链接&#xff1a;https://pan.baidu.com/s/1s2GuNuUKDjEXRzXgCvEYHQ?pwd6666 提取码&#xff1a;6666 安装 Hugo 在文件夹内建立新的文件夹, 在再内部建立两个文件夹, 分别命名为 bin 和 site.…

权威报道 | 百分点科技:《突发事件应急预案管理办法》解读

近日&#xff0c;百分点科技CTO刘译璟作为唯一企业界代表&#xff0c;接受应急领域权威期刊——《中国应急管理》杂志邀请&#xff0c;与中国安全生产科学研究院、中央党校、中国政法大学等单位的专家一起&#xff0c;就《突发事件应急预案管理办法》&#xff08;以下简称《办法…

【数据库】数据库应用系统生命周期

目录 1.为什么提出”软件工程“的思想&#xff1f; 2.为什么提出”瀑布模型“&#xff1f;缺点是什么&#xff1f; 3.为什么提出”快速原型模型“&#xff1f; 4.为什么提出”螺旋模型“&#xff1f; 5.关于数据库的英文缩写。 6.模型设计中的3条设计主线&#xff1a;数…

【快捷部署】015_Minio(latest)

&#x1f4e3;【快捷部署系列】015期信息 编号选型版本操作系统部署形式部署模式复检时间015MiniolatestCentOS 7.XDocker单机2024-04-09 一、快捷部署 #!/bin/bash ################################################################################# # 作者&#xff1a;c…

大模型RAG(一)文本分块

1. 文档分块策略 文档切分粒度不好把控&#xff0c;既担心噪声太多又担心语义信息丢失 文档索引构建常用思路&#xff1a; 一级索引是关键信息&#xff0c;用于计算相似度二级索引是原始文本二者通过索引映射 2. RAG的5种文本分块策略 字符分割 - 简单的静态字符数据块递归…

JVM调优-简介(一)

一、什么是JVM调优&#xff1f; JVM调优是指针对Java虚拟机&#xff08;JVM&#xff09;的配置和运行时环境进行优化和调整&#xff0c;以提高Java应用程序的性能、稳定性和可维护性的过程。JVM调优涉及多个方面&#xff0c;包括内存管理、垃圾回收、线程管理、类加载、运行时参…

【电控笔记5】pi参数整定

旋转坐标系下的电压方程&#xff0c;由id和iq计算出ud和uq 把常数项&#xff08;上面两个红框&#xff09;拿出来解耦合&#xff0c;作为前馈&#xff0c;如下 电流环传递函数 电流带宽 响应时间

使用I/O流将图片备份到指定目录

1.深度遍历指定目录rootPath中所有的子文件、子目录 2.将所有图片(后缀名为*.png\*.jpg)复制到指定目录backupPath 3.返回本次备份的图片数量 /* * 图片备份 */ public int backupImage(String rootPath,String backupPath){ return 0; } 实现思路&#xff1a; 1.定义主…

顺序表讲解

一.数据结构 在学习顺序表之前&#xff0c;我们先需要了解什么是数据结构。 1.什么是数据结构呢&#xff1f; 数据结构是由“数据”和结构两词组合而来。 什么是数据呢&#xff1f; 你的游戏账号&#xff0c;身份信息&#xff0c;网页里的信息&#xff08;文字&#xff0c…

构造析构理解与拷贝函数初识

1. 6个默认成员函数 ----初始化和清理{ 1.构造 2.析构 } -----拷贝复制{ 1.拷贝构造 2.赋值重载 } ------取地址重载{ 1.普通对象 2.const对象取地址 } 注&#xff1a;构造函数的目的是初始…

torchvision transforms 的二十二个方法

一、 裁剪Crop 1.随机裁剪&#xff1a;transforms.RandomCrop class torchvision.transforms.RandomCrop(size, paddingNone, pad_if_neededFalse, fill0, padding_modeconstant) 功能&#xff1a;依据给定的size随机裁剪 参数&#xff1a; size- (sequence or int)&#xff0…

珠海华发实业股份有限公司副总毛冰清莅临天府锋巢直播产业基地考察调研

3月19日&#xff0c;珠海华发实业股份有限公司副总毛冰清拜访天府锋巢直播产业基地&#xff08;以下简称天府锋巢&#xff09;&#xff0c;由产业招商总负责人姜国东进行接待。 基地建设情况 姜国东负责人介绍到&#xff0c;天府锋巢是由德商产投携手无锋科技于兴隆湖落地的成都…

Tmux 使用笔记

Tmux 是一个终端复用器&#xff08;terminal multiplexer&#xff09;&#xff0c;非常有用&#xff0c;属于常用的开发工具。 本文记录个人使用 Tmux的命令。 1. tmux简介 命令行的典型使用方式是&#xff0c;打开一个终端窗口&#xff0c;连接计算机&#xff0c;在里面输入…

Docker功能简单学习及使用

Docker是什么 Docker是一个快速构建&#xff0c;运行&#xff0c;管理应用的工具 传统基于linux安装程序较为复杂繁琐&#xff0c;使用docker可以快速的进行项目部署和管理 镜像与容器 Docker进行安装应用时&#xff0c;会自动搜索并下载应用镜像(image)。镜像不仅包含应用本…