kibana基本操作
kibana: 针对es的ES的开源分析可视化工具,与存储在ES的数据进行交互
索引 index:一条相似文档的集合,集合中存有很多条数据(只可以用小写字母,索引没有修改操作)
映射 mapping: 决定索引里文档所存储字段以及字段的类型
文档 document: 索引中的一条条数据,一条文档是可被索引的最小单元,ES中文档采用轻量级 Json 格式来表示
ES 官方下载压缩包:
https://www.elastic.co/cn/downloads/past-releases/kibana-7-17-0

解压压缩包
tar zxvf kibana-7.17.0-linux-x86_64.tar.gz

修改kibana配置:
启动kibana(一定要在es启动情况下启动kibana):


停止kibana服务
ps -ef|grep kibana
ps -ef|grep 5601
都找不到
尝试 使用 fuser -n tcp 5601
kill -9 端口
ps -ef|grep node 或 netstat -anltp|grep 5601
启动即可 ./kibana
后台启动:
nohup …/bin/kibana &
访问5601端口:

查看索引:
查看es中的索引:
GET /_cat/indices?v

创建索引:
创建索引:
PUT /索引名
PUT /products
PUT /products1
{
"settings": {
"number_of_shards": 1 #指定主分片数量
, "number_of_replicas": 1 #指定副本分片数量
}
}
ES中索引健康状态,red(索引不可用),yellow(索引可用,存在风险),green(健康)


创建索引,可指定索引相关信息:
设定全局默认分片:
PUT /_template/template_http_requert_record
{
"index_patterns": ["*"]
"settings": {
"number_of_shards": 1 #指定主分片数量
, "number_of_replicas": 1 #指定副本分片数量
}
}


删除索引:
删除索引:
DELETE /products1

创建索引时候,一并创建映射:
常见类型:
字符串类型:keyword(关键词关键字)、text(一段文本)
数字类型:integer log
小数类型:float double
布尔类型:boolean
日期类型:date
PUT /products
{
"settings": {
"number_of_replicas": 1,
"number_of_shards": 1
},
"mappings": {
"properties": {
"id":{
"type":"integer"
},
"title":{
"type":"keyword"
},
"price":{
"type":"double"
},
"create_at":{
"type":"date"
},
"description":{
"type":"text"
}
}
}
}

查询索引映射信息:
查询索引映射信息:
GET /索引名/_mapping
GET /products/_mapping

把一条文档放入索引中:添加文档操作
POST /products/_doc/1
{
"id":1,
"title":"薯条",
"price":"10.5",
"create_at":"2022-3-12",
"description":"薯条真好吃啊"
}
POST /products/_doc/
{
"title":"辣条",
"price":"9.5",
"create_at":"2022-3-12",
"description":"辣条真好吃啊"
}
查询文档操作:
手动指定文档id查询:
GET /products/_doc/1
GET /products/_doc/JxDXeX8BOmAdT3sErqxz
删除文档操作:
DELETE /products/_doc/
DELETE /products/_doc/JxDXeX8BOmAdT3sErqxz

更新文档操作(原文档删除,重新创建新的文档):
PUT /products/_doc/1
{
"title":"薯条子"
}

更新文档操作(指定文档字段更新,不重新创建新的文档):
POST /products/_doc/1/_update
{
"doc":{
"price":"5.8",
"title":"薯条"
}
}
查询id=1的文档:
GET /products/_doc/1

文档批量操作:添加、更新、删除:
POST /products/_doc/_bulk
{"index":{"_id":2}}
{"id":"2","title":"土豆啊","price":"1.8","create_at":"2022-03-12","description":"土豆可真好吃啊"}
{"index":{"_id":3}}
{"id":"3","title":"番茄","price":"4.8","cerate_at":"2022-03-12","description":"土豆可真好吃啊"}

POST /products/_doc/_bulk
{"index":{"_id":4}}
{"id":"4","title":"汉堡","price":"7.8","create_at":"2022-03-12","description":"汉堡可真好吃啊"}
{"update":{"_id":3}}
{"doc":{"title":"番茄子"}}
{"delete":{"_id":2}}

?博客主页:https://xiaoy.blog.csdn.net?本文由呆呆敲代码的小Y原创,首发于CSDN??学习专栏推荐:Unity系统学习专栏?游戏制作专栏推荐:游戏制作?Unity实战100例专栏推荐:Unity实战100例教程?欢迎点赞?收藏⭐留言?如有错误敬请指正!?未来很长,值得我们全力奔赴更美好的生活✨------------------❤️分割线❤️-------------------------
项目介绍随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱小学生兴趣延时班预约小程序的设计与开发被用户普遍使用,为方便用户能够可以随时进行小学生兴趣延时班预约小程序的设计与开发的数据信息管理,特开发了小程序的设计与开发的管理系统。小学生兴趣延时班预约小程序的设计与开发的开发利用现有的成熟技术参考,以源代码为模板,分析功能调整与小学生兴趣延时班预约小程序的设计与开发的实际需求相结合,讨论了小学生兴趣延时班预约小程序的设计与开发的使用。开发环境开发说明:前端使用微信微信小程序开发工具:后端使用ssm:VU
Rails相对较新。我正在尝试调用一个API,它应该向我返回一个唯一的URL。我的应用程序中捆绑了HTTParty。我已经创建了一个UniqueNumberController,并且我已经阅读了几个HTTParty指南,直到我想要什么,但也许我只是有点迷路,真的不知道该怎么做。基本上,我需要做的就是调用API,获取它返回的URL,然后将该URL插入到用户的数据库中。谁能给我指出正确的方向或与我分享一些代码? 最佳答案 假设API为JSON格式并返回如下数据:{"url":"http://example.com/unique-url"
我有一个使用SeleniumWebdriver和Nokogiri的Ruby应用程序。我想选择一个类,然后对于那个类对应的每个div,我想根据div的内容执行一个Action。例如,我正在解析以下页面:https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=puppies这是一个搜索结果页面,我正在寻找描述中包含“Adoption”一词的第一个结果。因此机器人应该寻找带有className:"result"的div,对于每个检查它的.descriptiondiv是否包含单词“adoption
我正在我的Rails项目中安装Grape以构建RESTfulAPI。现在一些端点的操作需要身份验证,而另一些则不需要身份验证。例如,我有users端点,看起来像这样:moduleBackendmoduleV1classUsers现在如您所见,除了password/forget之外的所有操作都需要用户登录/验证。创建一个新的端点也没有意义,比如passwords并且只是删除password/forget从逻辑上讲,这个端点应该与用户资源。问题是Grapebefore过滤器没有像except,only这样的选项,我可以在其中说对某些操作应用过滤器。您通常如何干净利落地处理这种情况?
在我做的一些网络开发中,我有多个操作开始,比如对外部API的GET请求,我希望它们同时开始,因为一个不依赖另一个的结果。我希望事情能够在后台运行。我找到了concurrent-rubylibrary这似乎运作良好。通过将其混合到您创建的类中,该类的方法具有在后台线程上运行的异步版本。这导致我编写如下代码,其中FirstAsyncWorker和SecondAsyncWorker是我编写的类,我在其中混合了Concurrent::Async模块,并编写了一个名为“work”的方法来发送HTTP请求:defindexop1_result=FirstAsyncWorker.new.async.
a=[3,4,7,8,3]b=[5,3,6,8,3]假设数组长度相同,是否有办法使用each或其他一些惯用方法从两个数组的每个元素中获取结果?不使用计数器?例如获取每个元素的乘积:[15,12,42,64,9](0..a.count-1).eachdo|i|太丑了...ruby1.9.3 最佳答案 使用Array.zip怎么样?:>>a=[3,4,7,8,3]=>[3,4,7,8,3]>>b=[5,3,6,8,3]=>[5,3,6,8,3]>>c=[]=>[]>>a.zip(b)do|i,j|c[[3,5],[4,3],[7,6],
我有一个非常简单的Controller来管理我的Rails应用程序中的静态页面:classPagesController我怎样才能让View模板返回它自己的名字,这样我就可以做这样的事情:#pricing.html.erb#-->"Pricing"感谢您的帮助。 最佳答案 4.3RoutingParametersTheparamshashwillalwayscontainthe:controllerand:actionkeys,butyoushouldusethemethodscontroller_nameandaction_nam
我正在尝试复制此GETcurl请求:curl-D--XGET-H"Authorization:BasicdGVzdEB0YXByZXNlYXJjaC5jb206NGMzMTg2Mjg4YWUyM2ZkOTY2MWNiNWRmY2NlMTkzMGU="-H"Content-Type:application/json"http://staging.example.com/api/v1/campaigns在Ruby中,通过电子邮件+apikey生成身份验证:auth="Basic"+Base64::encode64("test@example.com:4c3186288ae23fd9661c
1、接口请求基本操作1.1例子tips在view的选项可以zoomin调整窗口字帖大小。1、创建一个测试的workspace,并命名为test2、test后面新增一个addrequest3、选择发送GET,URL为一个开源的https://api.apiopen.top/api/sentences获取每日一句4、点击send查看内容Tips:如果提示出现Error:tunnelingsocketcouldnotbeestablished,statusCode=407错误,参照以下解决办法)关于tunnelingsocketcouldnotbeestablished,cause=getaddri