安装部分网上资料比较多,也讲的比较详细,请自行百度。
下面大概讲下InfluxDB的写入和读取数据的方法。
我使用了InfluxData.Net包。
工具-》NuGet包管理器-》管理解决方案的NuGet程序包-》浏览-》输入InfluxData.Net。
其中注意几点坑
1、InfluxDB的time格式是世界标准时区时间,所以我在其基础上加了8小时,具体请看下面的代码。
2、插入和查询数据时,语句中不能包含引号“”、‘’,这和InfluxDB的行协议有关,如果插入的数据中包含引号,一定要进行转义。例如 \“weather\“
3、查询后的数据格式和其他数据库不一致,格式如下。我提供了两种解析方法(输出List或json字符串)
代码如下:
新建项目后,工具-》NuGet包管理器-》管理解决方案的NuGet程序包
选择Nlog进行安装,如果是.net core项目就选择Nlog.Web.AspNetCore。
配置内容写在Nlog.config里边。主要用到两个标签:
Target:这个是主要用来配置日志输出的相关参数的,比如输出到文件、控制台还是数据库,输出的文件名称是什么,内容格式是什么等。
Rules:输出规则,定义根据不同的日志级别输出到不同的地方,比如Info类型的输出到文件,Error类型的通过邮件发送处理等。
详细的配置内容参考官方文档: https://github.com/nlog/NLog/wiki/Configuration-file.
下面是一个简单的配置
如果要讲日志输出到InfluxDB这种非标准输出,则需要扩展,编写自定义目标
下面是拓展步骤
1、创建一个继承自的类 NLog.Targets.TargetWithLayout
2、覆盖Write()方法。
3、在此方法的主体中,调用this.Layout.Render()以获取消息文本,然后将文本发送到目标媒体。
代码如下:
在Nlog.config中配置输出内容,配置如下
到这Nlog部分就结束了
__EOF__