elasticsearch +log4net.ElasticSearch+kibana(windows)

  • 需要的东西(目前用的5.6版本)

1.先安装jdk和jre 配置java环境
       2. 下载elasticsearch ,运行elasticsearch-5.6.16\bin\elasticsearch.bat 启动es,端口默认9200;(执行elasticsearch-service.bat install 设置为windows服务)
       3.下载kibana,运行kibana-5.6.16-windows-x86\bin\kibana.bat 启动kibana 端口默认5601;(执行 nssm install kibana,设置kibana路径,设置为windows服务,需要下载nssm)
       4.定时删除es索引;删除es索引\deleteIndex\delete.ext程序附加到windows任务计划程序,设置每天跑一次

var url=  ConfigurationManager.AppSettings["EsUrl"];
var indexs = ConfigurationManager.AppSettings["EsIndex"];
var day=int.Parse(ConfigurationManager.AppSettings["ESdeleteDay"]);
log.Info($"url:{url};索引:{indexs};删除天数:{day}");
var nodes = new Uri(url);
var client = new ElasticClient(nodes);
var index = indexs.Split(',');
var time = DateTime.Now;
foreach (var item in index)
{
var logindex=item+"-"+time.AddDays(day * -1).ToString("yyyy.MM.dd");
var result = client.DeleteIndex(logindex);
if (result.ApiCall.Success)
{
log.Info($"已删除索引:{logindex}");
}
}
  • 写入日志到es

      log4net.ElasticSearch基于log4net,基本无缝对接log4net,只需要更改log4net.config配置即可

 <log4net>
<root>
<level value="All" />
<!--记录到es-->
<appender-ref ref="ElasticSearchAppender" />
</root>
<appender name="ElasticSearchAppender" type="log4net.ElasticSearch.ElasticSearchAppender, log4net.ElasticSearch">
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d{ABSOLUTE} %-5p %c{1}:%L - %m%n" />
</layout> <connectionString value="Server=localhost;Index=pxin_log;Port=9200;rolling=true"/> <lossy value="false" />
<!-- 相当于缓存池,满10个才写入es-->
<bufferSize value="10" /> <evaluator type="log4net.Core.LevelEvaluator">
<!-- 异常级别直接写入es-->
<threshold value="ERROR"/>
</evaluator>
</appender>
</root>
</log4net>

  

最新文章

  1. Asp.Net Core--基于声明的授权
  2. 用python+selenium抓取豆瓣读书中最受关注图书并按评分排序
  3. bzoj1188 [HNOI2007]分裂游戏 博弈论 sg函数的应用
  4. hadoop2.6.4运行wordcount
  5. FFmpeg-20160428-snapshot-bin
  6. Codeforces 675E Trains and Statistic(DP + 贪心 + 线段树)
  7. 第一个django
  8. 【Hibernate】Hibernate系列5之检索策略
  9. 关于 IOS 发布的点点滴滴记录(一)
  10. 离线安装PM2
  11. qt creator中使用qwt插件
  12. cf 357C
  13. WinForm简单多国语言实现
  14. 【Java】Java里String 的equals和==
  15. Jenkins - 持续集成
  16. 使用redis有序集合sorted set设计高效查询ip所在地
  17. C#进阶のMEF注入
  18. ROS 创建服务和请求
  19. 获取本机的ip地址(排除虚拟机,蓝牙等ip)
  20. Vue组件学习

热门文章

  1. 根据User Agent参数的各个字段Mozilla/5.0/4.0-AppleWebKit/Chrome/Safari/Firefox/Opera/MSIE来确定/判断客户端使用什么浏览器
  2. 只要是使用函数file_get_contents访问 https 的网站都要开启
  3. 【原生JS】制作网页头部刷新进度条
  4. 条件随机场(CRF) - 2 - 定义和形式
  5. 洛谷P5020 货币系统 题解 模拟
  6. Vue 路由规则--传参数
  7. Vue 设置style属性
  8. Vue 小实例 跑马灯效果
  9. ssh使用笔记
  10. CF1063D Candies for Children