2个不稳定版本
0.2.0 | 2022年11月30日 |
---|---|
0.1.0 | 2022年11月29日 |
#39 in #elasticsearch
1.5MB
14K SLoC
ecs_types
Rust类型映射到Elasticsearch通用模式
此crate提供基本类型,用于将数据导入Elasticsearch。它由https://github.com/elastic/ecs中的类型定义生成。
crates文档可在https://docs.rs/crate/ecs_types找到。# ecs_types
使用示例
use ecs_types::types::Timestamp;
use ecs_types::*;
use serde_json::json;
let now: Timestamp = chrono::offset::Local::now().into();
let mut base = Base::new(now.clone());
let mut file = File::default();
file.set_name("readme.txt".into());
file.set_mtime(now);
base.with_file(file);
println!("{}", serde_json::to_string_pretty(&json!(base)).unwrap() );
创建以下结果
{
"@timestamp": 1669822098181,
"file": {
"attributes": [],
"mtime": 1669822098181,
"name": "readme.txt"
},
"tags": []
}
许可证: Apache-2.0
lib.rs
:
使用示例
use ecs_types::types::Timestamp;
use ecs_types::*;
use serde_json::json;
let now: Timestamp = chrono::offset::Local::now().into();
let mut base = Base::new(now.clone());
let mut file = File::default();
file.set_name("readme.txt".into());
file.set_mtime(now);
base.with_file(file);
println!("{}", serde_json::to_string_pretty(&json!(base)).unwrap() );
创建以下结果
{
"@timestamp": 1669822098181,
"file": {
"attributes": [],
"mtime": 1669822098181,
"name": "readme.txt"
},
"tags": []
}
依赖项
~2.2–4MB
~68K SLoC