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

新疆手机网站建设引流获客app下载

新疆手机网站建设,引流获客app下载,网站怎么做301定向,嘉峪关建设局公告网站案例简介 本案例是把日志数据保存到Elasticsearch的索引中,并通过Kibana图形化界面的开发工具给查询出来添加的日志数据,完成从0到1的简单使用 ElasticSearch职责用法简介 ElasticSearch用在哪 ElasticSearch在我这个案例中,不是用来缓解增…

案例简介

        本案例是把日志数据保存到Elasticsearch的索引中,并通过Kibana图形化界面的开发工具给查询出来添加的日志数据,完成从0到1的简单使用

ElasticSearch职责用法简介

ElasticSearch用在哪

        ElasticSearch在我这个案例中,不是用来缓解增删改查这4个操作的压力的(有些项目可能用来缓解查询的速度,压力,我这个项目没用到),是专门用来记录日志的,所以这就不像Redis,RabbitMQ一样,好理解,因为Redis、RabbitMQ是专门用来缓解业务操作压力的。

        ElasticSearch常用在日志管理中,原先项目的日志管理可能用的logback,保存到一个日志文件中,有问题了就打开看看,但项目的并发高了,就意味着日志就多,日志文件就大,几百兆的日志文件打开都不好打开,就算打开,也不好定位问题,就算是用MySQL表,数据量大了也不好处理,所以就用ElasticSearch专门存日志数据,管理日志。

ElasticSearch的一些简单概念

        ElasticSearch可以像MySQL那样存储数据,那这里面的概念就需要捋一下,MySQL存的数据在数据库、表中,ElasticSearch对应的就是索引、文档,只不过ElasticSearch7.X以及以后的版本,文档不能再自定义,只有默认的_doc,所以能自己命名的只有索引(对于一个新的工具,里面有一些新的概念,肯定得学,这没办法)

        ElasticSearch的查询语句格式和返回的数据格式都是JSON,所以这就增加了学习的成本,但不用全部都会,只需要知道怎么把springboot项目的日志保存到ElasticSearch中,然后在图形化界面程序Kibana中去查询到刚保存在ElasticSearch的日志就可以了

ElasticSearch在Kibana中怎么用

ElasticSearch的命令有
GET(查数据)、POST(创建和修改)、PUT(更新和创建)、DELETE(删除)

这4类之分,这4个命令关键字在Kibana的开发工具中使用的话必须大写

创建

PUT /students
{"mappings": {"properties": {"name": { "type": "text" },"age": { "type": "integer" },"phone": { "type": "keyword" }}}
}

PUT /students这个命令就是创建名为students的索引(数据都存这里)
mappings是定义索引的字段和数据类型
properties是包含索引中所有字段的定义
剩下的就是三个字段,以及三个字段的类型,keyword是表示精确匹配和聚合,也就是说,往里面添加数据就按照这三个定义好的字段以及类型添加就可以了

添加

POST /students/_doc
{"name": "张三","age": 18,"phone": "12345678910"
}

POST /students/_doc就是往刚才创建好的索引里面添加数据(7.0以后的版本都是默认_doc,不能自定义,students是索引名字,对应mysql的数据库,_doc是文档名字,对应mysql的表),剩下就是数据了

查询

GET /students/_search 
{"query" : { "match_all" : {}}
}

GET /students/_search是查询命令,
_search是查询的关键字,意思是执行搜索操作
query是指定查询条件
match_all是基本搜索,就是查询所有

修改

POST /students/_update/5QexW5IBczl1l0mGGalG
{"doc": {"age": 20}
}

POST /students/_update/5QexW5IBczl1l0mGGalG是根据id进行修改
doc是要更新的字段和新值,里面就是具体的字段值

删除

DELETE /students/_doc/5QexW5IBczl1l0mGGalG

SpringBoot和ElasticSearch结合简单使用

pom.xml文件坐标

        <!-- Spring Data Elasticsearch --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-elasticsearch</artifactId></dependency><!-- Elasticsearch Client --><dependency><groupId>org.elasticsearch.client</groupId><artifactId>elasticsearch-rest-high-level-client</artifactId><version>7.12.1</version></dependency>

配置文件

# ElasticSearch配置
spring.elasticsearch.rest.uris=http://127.0.0.1:9200

接口

往ElasticSearch里面添加数据的接口(对,就这个简单)

ElasticsearchRepository<Log, Long>,Log是日志文件对象,Long是日志主键类型

@Component
public interface LogElasticSearch extends ElasticsearchRepository<Log, Long> {
}

Log日志类

@Document(indexName = "logbill")        //logbill为索引名字,全部小写,不能大写

@Field(type = FieldType.Text)  //指定字段的类型,不写的话就是自动识别类型

@Data
@Entity
@Document(indexName = "logbill")//索引名字,全部小写
@Table(name = "log")
public class Log implements Serializable {@Id@GeneratedValue(strategy = GenerationType.IDENTITY,generator = "JDBC")private Long id;@Column@Field(type = FieldType.Text)private String ipv4;@Column@Fieldprivate String ipv6;@Column@Fieldprivate String controller;@Column@Fieldprivate String method;@Column@Fieldprivate String url;@Column@Fieldprivate String name;/*** 调用时间*/@Column@Field(type = FieldType.Date)@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")private Date time;/*** 逻辑删除*/@Column@Field(type = FieldType.Integer)private Integer deleted;public Log() {}public Log(String ipv4, String ipv6, String controller, String method, String url, String name, Date time, Integer deleted) {this.ipv4 = ipv4;this.ipv6 = ipv6;this.controller = controller;this.method = method;this.url = url;this.name = name;this.time = time;this.deleted = deleted;}
}

调用

在需要往ElasticSearch里面添加数据的地方,注入刚才那个接口,然后再调用save方法,这个data就是Log类型的,就可以了

    @Autowiredprivate LogElasticSearch logElasticsearch;
logElasticsearch.save(data);

最后再查询一下

GET /logbill/_search
{"query" : { "match_all" : {}}
}

总结

以上就完成了ElasticSearch的简单使用,从0到1的过程已经完成,至于以后用更加复杂的操作,那就看情况了,其实难点还是ElasticSearch的查询语句全部是JSON格式的,刚开始不太好接受,习惯了就好,有什么不懂得可以评论下,看到会回复

http://www.hkea.cn/news/642523/

相关文章:

  • 网站模板资源公司网站推广
  • 广东省建设教育协会官方网站首页html简单网页代码
  • 个人网站意义阿里指数官网最新版本
  • 网站开发方式有哪四种搜索引擎优化课程总结
  • 申请做网站、论坛版主app推广接单
  • 青海网站建设广州seo优化推广
  • 物流公司网站制作模板上海网站关键词排名
  • 广西建设人才网搜索引擎优化的目标
  • 比汉斯设计网站素材图片搜索识图入口
  • php网站架设教程英雄联盟韩国
  • 做毕设好的网站百度客服电话24小时
  • 上海手机网站建设电话咨询seo综合查询系统
  • wordpress 4.6 中文版沈阳seo
  • 文件管理软件天津搜索引擎优化
  • 九亭网站建设全国疫情高峰时间表最新
  • 青岛网站建设公司武汉seo收费
  • mvc网站建设的实验报告怎么做优化
  • 有官网建手机网站千锋教育培训多少钱费用
  • b2c交易模式的网站有哪些百度营销客户端
  • flash 学习网站重庆网站seo多少钱
  • 年终总结ppt模板免费下载网站小红书seo排名规则
  • 自己架设网站口碑营销的产品有哪些
  • 湖北省网站备案最快几天天津百度推广排名优化
  • app在线开发制作平台seo网络优化前景怎么样
  • 商务网站的基本情况网站建设工作总结
  • 山西建设厅网站网络销售怎么聊客户
  • 软装素材网站有哪些seo网络排名优化哪家好
  • 邯郸市做网站建设网络口碑营销案例分析
  • 罗湖网站建设联系电话西安核心关键词排名
  • 如何编写网站电脑清理软件十大排名