成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Sentry 監控 - Snuba 數據中臺架構(SnQL 查詢語言簡介)

安全 應用安全 中臺
數據集(dataset)通過查詢使用的 url 隱含。在 JSON 主體中,除了 query 之外的所有字段都是可選的。

[[437050]]

以下是 SnQL 的查詢結構:

  1. MATCH simple | join | subquery 
  2.  
  3. SELECT [expressions] | [aggregations BY expressions] 
  4.  
  5. ARRAY JOIN [column
  6.  
  7. WHERE condition [[AND | OR] condition]* 
  8.  
  9. HAVING condition [[AND | OR] condition]* 
  10.  
  11. ORDER BY expressions ASC|DESC [, expressions ASC|DESC]* 
  12.  
  13. LIMIT expression BY n 
  14.  
  15. LIMIT n 
  16.  
  17. OFFSET n 
  18.  
  19. GRANULARITY n 
  20.  
  21. TOTALS boolean 

這些查詢作為字符串發送到 /:dataset/snql 端點,編碼為以下格式的 JSON body:

  1.     "query""<query>"
  2.     "dataset""<dataset>"
  3.     "consistent": bool, 
  4.     "turbo": bool, 
  5.     "debug": bool, 

數據集(dataset)通過查詢使用的 url 隱含。在 JSON 主體中,除了 query 之外的所有字段都是可選的。

MATCH

我們的數據模型由實體圖表示。該子句標識了我們正在查詢的子圖(subgraphs)的模式。目前支持三種類型的 MATCH 子句:

Simple:

  1. MATCH (<entity> [SAMPLE n]) 

這相當于我們當前的所有查詢。這是從單個實體(事件、事務等)查詢數據。可以通過將其與實體一起添加來向查詢添加可選 sample。

例如:MATCH (events)

Subquery:

  1. MATCH { <query> } 

花括號內可以是另一個完整的 SQL 查詢。子查詢的 SELECT/BY 子句中的任何內容都將使用指定的別名在外部查詢中公開。

例如:

  1. MATCH { 
  2.     MATCH (transactions) 
  3.     SELECT avg(duration) AS avg_d BY transaction 
  4. SELECT max(avg_d) 

Join(連接):

  1. MATCH (<alias>: <entity> [SAMPLE n]) -[<join>]-> (<alias>: <entity> [SAMPLE n]) 

一個 join 代表一個多節點子圖(subgraph),是一個包含不同節點之間的多個關系的子圖。目前支持節點之間的 1..n、n..1 和 1..1 有向關系。

對于 JOIN,每個實體都必須有一個別名,這是一個唯一的字符串。 抽樣(Sampling)也可以應用于 join 中的任何實體。 是在 Snuba 中的 Entity 中指定的字符串,是一組 join 條件的簡寫。可以有多個 join 子句,用逗號分隔。

例如:

  1. MATCH 
  2.  
  3. (e: events) -[grouped]-> (g: groupedmessage), 
  4.  
  5. (e: events) -[assigned]-> (a: groupassignee) 
  6.  
  7. SELECT count() AS tot BY e.project_id, g.id 
  8.  
  9. WHERE a.user_id = "somebody" 

join 類型(left/inner)和 join key 是數據模型的一部分,而不是查詢的一部分。它們被硬編碼在實體代碼中。這是因為沒有實體可以安全地與底層數據庫的分布式版本中的任何其他實體連接。

match 子句提供給 where 子句的元組(tuple)看起來與傳統 join 子句生成的元組完全一樣:

  1.  
  2. {"e.project_id": 1, "g.id": 10} 
  3.  
  4. {"e.project_id": 1, "g.id": 11} 
  5.  
  6. {"e.project_id": 2, "g.id": 20} 
  7.  
  8. ... 
  9.  

SELECT .. BY

該子句指定應在輸出中返回哪些結果。如果存在聚合(aggregation),則 BY 子句中的所有內容都被視為分組 key。如果我們想要聚合整個結果集,則可以在沒有 BY 子句的情況下進行聚合,但在這種情況下,SELECT 中只能包含聚合。即使有 BY 子句,空的 SELECT 子句也是無效的。

SELECT 子句中的表達式可以是列、算術、函數或三者的任意組合。如果查詢是 join,則每一列都必須有一個符合條件的別名,該別名與 MATCH 子句中的實體別名之一匹配。

WHERE

這是在聚合之前發生的查詢的過濾器(如 SQL 中的 WHERE)。

條件是 LHS OP RHS* 形式的中綴表達式,其中 LHS 和 RHS 是字面值或表達式。OP 指的是一個特定的運算符來比較兩個值。這些運算符是 =、!=、<、<=、>、>=、IN、NOT IN、LIKE、NOT LIKE、IS NULL、IS NOT NULL 之一。請注意,當使用像 IS NULL 這樣的運算符時,RHS 是可選的。

可以使用布爾關鍵字 AND 或 OR 組合條件。它們也可以使用 () 進行分組。

HAVING

像 WHERE 子句一樣工作,但它在 SELECT 子句中聲明的聚合之后應用。所以我們可以在這里對聚合函數的結果應用條件。

ORDER BY

指定對結果集進行排序的表達式。

LIMIT BY/LIMIT/OFFSET

不言自明,它們采用整數并在 Clickhouse 查詢中設置相應的值。如果查詢未指定 limit 或 offset,它們將分別默認為 1000 和 0。

GRANULARITY

一個整數,表示對基于時間的結果進行分組的粒度。

TOTALS

如果設置為 True,來自 Snuba 的響應將有一個 “totals” key,其中包含所有選定行的總值。

SAMPLE

如果 MATCH 子句中的節點未提供采樣率,則可以在此處指定。在這種情況下,Snuba 會將 sample right 分配給查詢中的節點之一。sample 可以是介于 0 和 1 之間的浮點數,表示要采樣的行的百分比。

 

或者它可以是一個大于 1 的整數,表示要采樣的行數。

 

責任編輯:武曉燕 來源: 黑客下午茶
相關推薦

2021-10-11 19:36:08

監控Sentry架構

2021-10-09 23:33:55

監控

2021-11-26 18:53:53

監控數據中臺

2021-10-09 00:00:40

Sentr 監控架構

2021-12-01 23:59:45

監控Snuba數據中臺

2021-09-16 23:33:41

大數據Sentry監控

2023-04-21 13:15:01

2022-03-15 21:38:29

sentry微服務監控

2010-04-11 17:18:14

Windows Pho

2021-09-14 23:50:17

Sentry后端監控

2021-09-27 19:41:31

監控Sentry Alerts

2021-09-26 16:20:04

Sentry Dashboards 數據可視化

2019-12-12 10:22:16

大數據平臺大數據安全大數據

2021-09-13 05:00:09

監控Trends 性能

2021-09-11 21:02:24

監控Sentry Web性能

2021-04-22 08:45:38

架構交易中臺

2021-11-17 18:38:32

avaScriptSDK調試

2023-02-13 11:43:15

云原生中間件負載均衡

2021-09-09 12:28:50

Sentry Web性能監控

2021-09-29 07:47:49

Sentry 監控Environment事件數據
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲一区二区三区免费视频 | 国产区在线 | 欧美精品欧美精品系列 | 成人h动漫精品一区二区器材 | 亚洲国产成人精品女人 | 日韩一区二区三区四区五区六区 | www国产成人免费观看视频 | www.天天操 | 精品国产一区二区在线 | 在线观看精品 | 欧美a在线| 国产精品一区二区久久 | 亚洲精品2| 婷婷色成人| 国产 欧美 日韩 一区 | 91资源在线| 成人免费在线视频 | 欧美日韩高清一区 | 99在线资源 | 欧美日本高清 | 国产精品欧美一区二区三区不卡 | 成人精品一区二区 | 很很干很很日 | 免费在线观看一区二区 | 精品在线看 | 日韩精品1区2区3区 爱爱综合网 | 久久久久久久久毛片 | 日韩av福利在线观看 | 精品亚洲一区二区三区四区五区高 | 欧美一级做性受免费大片免费 | 精品小视频 | 久久久久久成人 | 爱草视频| 国产欧美视频一区二区三区 | 亚洲va在线va天堂va狼色在线 | 久久精品国产久精国产 | 日韩精品一区二区三区视频播放 | 国产在线激情视频 | 亚洲国产精品一区二区第一页 | 亚洲精品一区二区三区在线 | 成人av在线播放 |