分享
  1. 首页
  2. 文章

2.golang 操作elasticsearch-7

haodevops · · 1211 次点击 · · 开始浏览
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

连接es代码

$ cat loges.go

package main

import (

"bytes"

"context"

"encoding/json"

"fmt"

"github.com/elastic/go-elasticsearch/v7"

)

func Loges(msg string, dateIndex string) {

addresses := []string{"http://10.20.9.105:9200"}

config := elasticsearch.Config{

Addresses: addresses,

Username: "elastic",

Password: "rxyn38#*",

CloudID: "",

APIKey: "",

}

// new client

es, err := elasticsearch.NewClient(config)

fmt.Println(err, "Error creating the client")

res, err := es.Info()

fmt.Println(err, "Error getting response")

// fmt.Println(res.String())

var buf bytes.Buffer

query := map[string]interface{}{

"query": map[string]interface{}{

"match": map[string]interface{}{

"msg": msg,

},

},

"highlight": map[string]interface{}{

"pre_tags": []string{"<font color='red'>"},

"post_tags": []string{"</font>"},

"fields": map[string]interface{}{

"title": map[string]interface{}{},

},

},

}

if err := json.NewEncoder(&buf).Encode(query); err != nil {

fmt.Println(err, "Error encoding query")

}

// Perform the search request.

res, err = es.Search(

es.Search.WithContext(context.Background()),

es.Search.WithIndex(dateIndex),

es.Search.WithBody(&buf),

es.Search.WithTrackTotalHits(true),

es.Search.WithPretty(),

)

if err != nil {

fmt.Println(err, "Error getting response")

}

defer res.Body.Close()

// return res.String()

fmt.Println(res.String())

}

main代码

$ cat main.go

package main

import (

"flag"

)

var (

msg string

dateIndex string

)

func init() {

flag.StringVar(&msg, "msg", "检验是否满足xx条件", "输入要匹配的内容")

flag.StringVar(&dateIndex, "dateIndex", "log_prod-2021年03月11日", "输入要搜索的索引")

}

func main() {

flag.Parse()

Loges(msg, dateIndex)

}

编译构建

go build -o loges.exe .\main.go .\loges.go

执行

./loges.exe -msg "校验是否满足xx条件" -dateIndex "log_prod-2021年03月17日"


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:haodevops

查看原文:2.golang 操作elasticsearch-7

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

关注微信
1211 次点击
暂无回复
添加一条新回复 (您需要 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传

用户登录

没有账号?注册
(追記) (追記ここまで)

今日阅读排行

    加载中
(追記) (追記ここまで)

一周阅读排行

    加载中

关注我

  • 扫码关注领全套学习资料 关注微信公众号
  • 加入 QQ 群:
    • 192706294(已满)
    • 731990104(已满)
    • 798786647(已满)
    • 729884609(已满)
    • 977810755(已满)
    • 815126783(已满)
    • 812540095(已满)
    • 1006366459(已满)
    • 692541889

  • 关注微信公众号
  • 加入微信群:liuxiaoyan-s,备注入群
  • 也欢迎加入知识星球 Go粉丝们(免费)

给该专栏投稿 写篇新文章

每篇文章有总共有 5 次投稿机会

收入到我管理的专栏 新建专栏