From 108cdb820006cc136194ccc931d45b9e1def329c Mon Sep 17 00:00:00 2001
From: enochtangg
Date: Mon, 8 Jan 2024 18:38:30 +0000
Subject: [PATCH] deploy: 00cdc2086c5f6190b2fb70f98b18a0d01810942d
---
.nojekyll | 0
index.html | 7 +
search.js | 46 +
snuba_sdk.html | 6306 ++++++++++++++++++++++++++++++++++++++++++++++++
4 files changed, 6359 insertions(+)
create mode 100644 .nojekyll
create mode 100644 index.html
create mode 100644 search.js
create mode 100644 snuba_sdk.html
diff --git a/.nojekyll b/.nojekyll
new file mode 100644
index 00000000..e69de29b
diff --git a/index.html b/index.html
new file mode 100644
index 00000000..98aadfdb
--- /dev/null
+++ b/index.html
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
diff --git a/search.js b/search.js
new file mode 100644
index 00000000..41a36b99
--- /dev/null
+++ b/search.js
@@ -0,0 +1,46 @@
+window.pdocSearch = (function(){
+/** elasticlunr - http://weixsong.github.io * Copyright (C) 2017 Oliver Nightingale * Copyright (C) 2017 Wei Song * MIT Licensed */!function(){function e(e){if(null===e||"object"!=typeof e)return e;var t=e.constructor();for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}var t=function(e){var n=new t.Index;return n.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),e&&e.call(n,n),n};t.version="0.9.5",lunr=t,t.utils={},t.utils.warn=function(e){return function(t){e.console&&console.warn&&console.warn(t)}}(this),t.utils.toString=function(e){return void 0===e||null===e?"":e.toString()},t.EventEmitter=function(){this.events={}},t.EventEmitter.prototype.addListener=function(){var e=Array.prototype.slice.call(arguments),t=e.pop(),n=e;if("function"!=typeof t)throw new TypeError("last argument must be a function");n.forEach(function(e){this.hasHandler(e)||(this.events[e]=[]),this.events[e].push(t)},this)},t.EventEmitter.prototype.removeListener=function(e,t){if(this.hasHandler(e)){var n=this.events[e].indexOf(t);-1!==n&&(this.events[e].splice(n,1),0==this.events[e].length&&delete this.events[e])}},t.EventEmitter.prototype.emit=function(e){if(this.hasHandler(e)){var t=Array.prototype.slice.call(arguments,1);this.events[e].forEach(function(e){e.apply(void 0,t)},this)}},t.EventEmitter.prototype.hasHandler=function(e){return e in this.events},t.tokenizer=function(e){if(!arguments.length||null===e||void 0===e)return[];if(Array.isArray(e)){var n=e.filter(function(e){return null===e||void 0===e?!1:!0});n=n.map(function(e){return t.utils.toString(e).toLowerCase()});var i=[];return n.forEach(function(e){var n=e.split(t.tokenizer.seperator);i=i.concat(n)},this),i}return e.toString().trim().toLowerCase().split(t.tokenizer.seperator)},t.tokenizer.defaultSeperator=/[\s\-]+/,t.tokenizer.seperator=t.tokenizer.defaultSeperator,t.tokenizer.setSeperator=function(e){null!==e&&void 0!==e&&"object"==typeof e&&(t.tokenizer.seperator=e)},t.tokenizer.resetSeperator=function(){t.tokenizer.seperator=t.tokenizer.defaultSeperator},t.tokenizer.getSeperator=function(){return t.tokenizer.seperator},t.Pipeline=function(){this._queue=[]},t.Pipeline.registeredFunctions={},t.Pipeline.registerFunction=function(e,n){n in t.Pipeline.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+n),e.label=n,t.Pipeline.registeredFunctions[n]=e},t.Pipeline.getRegisteredFunction=function(e){return e in t.Pipeline.registeredFunctions!=!0?null:t.Pipeline.registeredFunctions[e]},t.Pipeline.warnIfFunctionNotRegistered=function(e){var n=e.label&&e.label in this.registeredFunctions;n||t.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",e)},t.Pipeline.load=function(e){var n=new t.Pipeline;return e.forEach(function(e){var i=t.Pipeline.getRegisteredFunction(e);if(!i)throw new Error("Cannot load un-registered function: "+e);n.add(i)}),n},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(e){t.Pipeline.warnIfFunctionNotRegistered(e),this._queue.push(e)},this)},t.Pipeline.prototype.after=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var i=this._queue.indexOf(e);if(-1===i)throw new Error("Cannot find existingFn");this._queue.splice(i+1,0,n)},t.Pipeline.prototype.before=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var i=this._queue.indexOf(e);if(-1===i)throw new Error("Cannot find existingFn");this._queue.splice(i,0,n)},t.Pipeline.prototype.remove=function(e){var t=this._queue.indexOf(e);-1!==t&&this._queue.splice(t,1)},t.Pipeline.prototype.run=function(e){for(var t=[],n=e.length,i=this._queue.length,o=0;n>o;o++){for(var r=e[o],s=0;i>s&&(r=this._queue[s](r,o,e),void 0!==r&&null!==r);s++);void 0!==r&&null!==r&&t.push(r)}return t},t.Pipeline.prototype.reset=function(){this._queue=[]},t.Pipeline.prototype.get=function(){return this._queue},t.Pipeline.prototype.toJSON=function(){return this._queue.map(function(e){return t.Pipeline.warnIfFunctionNotRegistered(e),e.label})},t.Index=function(){this._fields=[],this._ref="id",this.pipeline=new t.Pipeline,this.documentStore=new t.DocumentStore,this.index={},this.eventEmitter=new t.EventEmitter,this._idfCache={},this.on("add","remove","update",function(){this._idfCache={}}.bind(this))},t.Index.prototype.on=function(){var e=Array.prototype.slice.call(arguments);return this.eventEmitter.addListener.apply(this.eventEmitter,e)},t.Index.prototype.off=function(e,t){return this.eventEmitter.removeListener(e,t)},t.Index.load=function(e){e.version!==t.version&&t.utils.warn("version mismatch: current "+t.version+" importing "+e.version);var n=new this;n._fields=e.fields,n._ref=e.ref,n.documentStore=t.DocumentStore.load(e.documentStore),n.pipeline=t.Pipeline.load(e.pipeline),n.index={};for(var i in e.index)n.index[i]=t.InvertedIndex.load(e.index[i]);return n},t.Index.prototype.addField=function(e){return this._fields.push(e),this.index[e]=new t.InvertedIndex,this},t.Index.prototype.setRef=function(e){return this._ref=e,this},t.Index.prototype.saveDocument=function(e){return this.documentStore=new t.DocumentStore(e),this},t.Index.prototype.addDoc=function(e,n){if(e){var n=void 0===n?!0:n,i=e[this._ref];this.documentStore.addDoc(i,e),this._fields.forEach(function(n){var o=this.pipeline.run(t.tokenizer(e[n]));this.documentStore.addFieldLength(i,n,o.length);var r={};o.forEach(function(e){e in r?r[e]+=1:r[e]=1},this);for(var s in r){var u=r[s];u=Math.sqrt(u),this.index[n].addToken(s,{ref:i,tf:u})}},this),n&&this.eventEmitter.emit("add",e,this)}},t.Index.prototype.removeDocByRef=function(e){if(e&&this.documentStore.isDocStored()!==!1&&this.documentStore.hasDoc(e)){var t=this.documentStore.getDoc(e);this.removeDoc(t,!1)}},t.Index.prototype.removeDoc=function(e,n){if(e){var n=void 0===n?!0:n,i=e[this._ref];this.documentStore.hasDoc(i)&&(this.documentStore.removeDoc(i),this._fields.forEach(function(n){var o=this.pipeline.run(t.tokenizer(e[n]));o.forEach(function(e){this.index[n].removeToken(e,i)},this)},this),n&&this.eventEmitter.emit("remove",e,this))}},t.Index.prototype.updateDoc=function(e,t){var t=void 0===t?!0:t;this.removeDocByRef(e[this._ref],!1),this.addDoc(e,!1),t&&this.eventEmitter.emit("update",e,this)},t.Index.prototype.idf=function(e,t){var n="@"+t+"/"+e;if(Object.prototype.hasOwnProperty.call(this._idfCache,n))return this._idfCache[n];var i=this.index[t].getDocFreq(e),o=1+Math.log(this.documentStore.length/(i+1));return this._idfCache[n]=o,o},t.Index.prototype.getFields=function(){return this._fields.slice()},t.Index.prototype.search=function(e,n){if(!e)return[];e="string"==typeof e?{any:e}:JSON.parse(JSON.stringify(e));var i=null;null!=n&&(i=JSON.stringify(n));for(var o=new t.Configuration(i,this.getFields()).get(),r={},s=Object.keys(e),u=0;u0&&t.push(e);for(var i in n)"docs"!==i&&"df"!==i&&this.expandToken(e+i,t,n[i]);return t},t.InvertedIndex.prototype.toJSON=function(){return{root:this.root}},t.Configuration=function(e,n){var e=e||"";if(void 0==n||null==n)throw new Error("fields should not be null");this.config={};var i;try{i=JSON.parse(e),this.buildUserConfig(i,n)}catch(o){t.utils.warn("user configuration parse failed, will use default configuration"),this.buildDefaultConfig(n)}},t.Configuration.prototype.buildDefaultConfig=function(e){this.reset(),e.forEach(function(e){this.config[e]={boost:1,bool:"OR",expand:!1}},this)},t.Configuration.prototype.buildUserConfig=function(e,n){var i="OR",o=!1;if(this.reset(),"bool"in e&&(i=e.bool||i),"expand"in e&&(o=e.expand||o),"fields"in e)for(var r in e.fields)if(n.indexOf(r)>-1){var s=e.fields[r],u=o;void 0!=s.expand&&(u=s.expand),this.config[r]={boost:s.boost||0===s.boost?s.boost:1,bool:s.bool||i,expand:u}}else t.utils.warn("field name in user configuration not found in index instance fields");else this.addAllFields2UserConfig(i,o,n)},t.Configuration.prototype.addAllFields2UserConfig=function(e,t,n){n.forEach(function(n){this.config[n]={boost:1,bool:e,expand:t}},this)},t.Configuration.prototype.get=function(){return this.config},t.Configuration.prototype.reset=function(){this.config={}},lunr.SortedSet=function(){this.length=0,this.elements=[]},lunr.SortedSet.load=function(e){var t=new this;return t.elements=e,t.length=e.length,t},lunr.SortedSet.prototype.add=function(){var e,t;for(e=0;e1;){if(r===e)return o;e>r&&(t=o),r>e&&(n=o),i=n-t,o=t+Math.floor(i/2),r=this.elements[o]}return r===e?o:-1},lunr.SortedSet.prototype.locationFor=function(e){for(var t=0,n=this.elements.length,i=n-t,o=t+Math.floor(i/2),r=this.elements[o];i>1;)e>r&&(t=o),r>e&&(n=o),i=n-t,o=t+Math.floor(i/2),r=this.elements[o];return r>e?o:e>r?o+1:void 0},lunr.SortedSet.prototype.intersect=function(e){for(var t=new lunr.SortedSet,n=0,i=0,o=this.length,r=e.length,s=this.elements,u=e.elements;;){if(n>o-1||i>r-1)break;s[n]!==u[i]?s[n]u[i]&&i++:(t.add(s[n]),n++,i++)}return t},lunr.SortedSet.prototype.clone=function(){var e=new lunr.SortedSet;return e.elements=this.toArray(),e.length=e.elements.length,e},lunr.SortedSet.prototype.union=function(e){var t,n,i;this.length>=e.length?(t=this,n=e):(t=e,n=this),i=t.clone();for(var o=0,r=n.toArray();o
\n\nSee here for the full\ndocumentation .
\n\nStatus \n\n
\n\n
\n\n
\n\nExamples \n\nSnuba SDK is a tool that allows requests to Snuba to be built\nprogramatically. A Request consists of a Query, the dataset the Query is\ntargeting, the AppID of the Request, and any flags for the Request. A\nQuery object is a code representation of a SnQL query, and has a number\nof attributes corresponding to different parts of the query.
\n\nRequests and Queries can be created directly:
\n\n\n
request = Request ( \n dataset = "discover" , \n app_id = "myappid" , \n tenant_ids = { "referrer" : "my_referrer" , "organization_id" : 1234 } \n query = Query ( \n match = Entity ( "events" ), \n select = [ \n Column ( "title" ), \n Function ( "uniq" , [ Column ( "event_id" )], "uniq_events" ), \n ], \n groupby = [ Column ( "title" )], \n where = [ \n Condition ( Column ( "timestamp" ), Op . GT , datetime . datetime ( 2021 , 1 , 1 )), \n Condition ( Column ( "project_id" ), Op . IN , Function ( "tuple" , [ 1 , 2 , 3 ])), \n ], \n limit = Limit ( 10 ), \n offset = Offset ( 0 ), \n granularity = Granularity ( 3600 ), \n ), \n flags = Flags ( debug = True ) \n) \n
\n
\n\nQueries can also be built incrementally:
\n\n\n
query = ( \n Query ( "discover" , Entity ( "events" )) \n . set_select ( \n [ Column ( "title" ), Function ( "uniq" , [ Column ( "event_id" )], "uniq_events" )] \n ) \n . set_groupby ([ Column ( "title" )]) \n . set_where ( \n [ \n Condition ( Column ( "timestamp" ), Op . GT , datetime . datetime . ( 2021 , 1 , 1 )), \n Condition ( Column ( "project_id" ), Op . IN , Function ( "tuple" , [ 1 , 2 , 3 ])), \n ] \n ) \n . set_limit ( 10 ) \n . set_offset ( 0 ) \n . set_granularity ( 3600 ) \n) \n
\n
\n\nOnce the request is built, it can be translated into a Snuba request\nthat can be sent to Snuba.
\n\n\n
# Outputs a formatted Snuba request \nrequest . serialize () \n
\n
\n\nIt can also be printed in a more human readable format.
\n\n\n
# Outputs a formatted Snuba request \nprint ( request . print ()) \n
\n
\n\nThis outputs:
\n\n\n
{ \n "dataset" : "discover" , \n "app_id" : "myappid" , \n "query" : "MATCH (events) SELECT title, uniq(event_id) AS uniq_events BY title WHERE timestamp > toDateTime('2021-01-01T00:00:00.000000') AND project_id IN tuple(1, 2, 3) LIMIT 10 OFFSET 0 GRANULARITY 3600" , \n "debug" : true \n} \n
\n
\n\nIf an expression in the query is invalid (e.g. Column(1)
) then an\nInvalidExpressionError
exception will be thrown. If there is a problem\nwith a query, it will throw an InvalidQueryError
exception when\n.validate()
or .translate()
is called. If there is a problem with\nthe Request or the Flags, an InvalidRequestError
or InvalidFlagError
\nwill be thrown respectively.
\n\nContributing to the SDK \n\nPlease refer to\nCONTRIBUTING.rst .
\n\nLicense \n\nLicensed under FSL-1.0-Apache-2.0, see\nLICENSE .
\n"}, "snuba_sdk.AliasedExpression": {"fullname": "snuba_sdk.AliasedExpression", "modulename": "snuba_sdk", "qualname": "AliasedExpression", "kind": "class", "doc": "Used to alias the name of an expression in the results of a query. It is not used\nanywhere in Snuba except to change the names in the results set. Right now this is\nlimited to Columns only because Functions have a separate alias. Eventually the\ntwo will be combined.
\n\nParameters \n\n\nExpression : The expression to alias. \n \n\nRaises \n\n\nInvalidExpressionError : If the expression or alias is invalid. \n \n", "bases": "snuba_sdk.expressions.Expression"}, "snuba_sdk.AliasedExpression.__init__": {"fullname": "snuba_sdk.AliasedExpression.__init__", "modulename": "snuba_sdk", "qualname": "AliasedExpression.__init__", "kind": "function", "doc": "
\n", "signature": "(exp : snuba_sdk . column . Column , alias : Union [ str , NoneType ] = None ) "}, "snuba_sdk.AliasedExpression.exp": {"fullname": "snuba_sdk.AliasedExpression.exp", "modulename": "snuba_sdk", "qualname": "AliasedExpression.exp", "kind": "variable", "doc": "
\n", "annotation": ": snuba_sdk.column.Column"}, "snuba_sdk.AliasedExpression.alias": {"fullname": "snuba_sdk.AliasedExpression.alias", "modulename": "snuba_sdk", "qualname": "AliasedExpression.alias", "kind": "variable", "doc": "
\n", "annotation": ": Union[str, NoneType]", "default_value": "None"}, "snuba_sdk.AliasedExpression.validate": {"fullname": "snuba_sdk.AliasedExpression.validate", "modulename": "snuba_sdk", "qualname": "AliasedExpression.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.And": {"fullname": "snuba_sdk.And", "modulename": "snuba_sdk", "qualname": "And", "kind": "class", "doc": "
\n", "bases": "snuba_sdk.conditions.BooleanCondition"}, "snuba_sdk.And.__init__": {"fullname": "snuba_sdk.And.__init__", "modulename": "snuba_sdk", "qualname": "And.__init__", "kind": "function", "doc": "
\n", "signature": "(\tconditions : Sequence [ Union [ snuba_sdk . conditions . BooleanCondition , snuba_sdk . conditions . Condition ]] = < factory > ) "}, "snuba_sdk.And.op": {"fullname": "snuba_sdk.And.op", "modulename": "snuba_sdk", "qualname": "And.op", "kind": "variable", "doc": "
\n", "annotation": ": snuba_sdk.conditions.BooleanOp", "default_value": "<BooleanOp.AND: 'AND'>"}, "snuba_sdk.And.conditions": {"fullname": "snuba_sdk.And.conditions", "modulename": "snuba_sdk", "qualname": "And.conditions", "kind": "variable", "doc": "
\n", "annotation": ": Sequence[Union[snuba_sdk.conditions.BooleanCondition, snuba_sdk.conditions.Condition]]"}, "snuba_sdk.ArithmeticOperator": {"fullname": "snuba_sdk.ArithmeticOperator", "modulename": "snuba_sdk", "qualname": "ArithmeticOperator", "kind": "class", "doc": "An enumeration.
\n", "bases": "enum.Enum"}, "snuba_sdk.ArithmeticOperator.PLUS": {"fullname": "snuba_sdk.ArithmeticOperator.PLUS", "modulename": "snuba_sdk", "qualname": "ArithmeticOperator.PLUS", "kind": "variable", "doc": "
\n", "default_value": "<ArithmeticOperator.PLUS: 'plus'>"}, "snuba_sdk.ArithmeticOperator.MINUS": {"fullname": "snuba_sdk.ArithmeticOperator.MINUS", "modulename": "snuba_sdk", "qualname": "ArithmeticOperator.MINUS", "kind": "variable", "doc": "
\n", "default_value": "<ArithmeticOperator.MINUS: 'minus'>"}, "snuba_sdk.ArithmeticOperator.MULTIPLY": {"fullname": "snuba_sdk.ArithmeticOperator.MULTIPLY", "modulename": "snuba_sdk", "qualname": "ArithmeticOperator.MULTIPLY", "kind": "variable", "doc": "
\n", "default_value": "<ArithmeticOperator.MULTIPLY: 'multiply'>"}, "snuba_sdk.ArithmeticOperator.DIVIDE": {"fullname": "snuba_sdk.ArithmeticOperator.DIVIDE", "modulename": "snuba_sdk", "qualname": "ArithmeticOperator.DIVIDE", "kind": "variable", "doc": "
\n", "default_value": "<ArithmeticOperator.DIVIDE: 'divide'>"}, "snuba_sdk.BooleanCondition": {"fullname": "snuba_sdk.BooleanCondition", "modulename": "snuba_sdk", "qualname": "BooleanCondition", "kind": "class", "doc": "
\n", "bases": "snuba_sdk.expressions.Expression"}, "snuba_sdk.BooleanCondition.__init__": {"fullname": "snuba_sdk.BooleanCondition.__init__", "modulename": "snuba_sdk", "qualname": "BooleanCondition.__init__", "kind": "function", "doc": "
\n", "signature": "(\top : snuba_sdk . conditions . BooleanOp , \tconditions : Sequence [ Union [ snuba_sdk . conditions . BooleanCondition , snuba_sdk . conditions . Condition ]] ) "}, "snuba_sdk.BooleanCondition.op": {"fullname": "snuba_sdk.BooleanCondition.op", "modulename": "snuba_sdk", "qualname": "BooleanCondition.op", "kind": "variable", "doc": "
\n", "annotation": ": snuba_sdk.conditions.BooleanOp"}, "snuba_sdk.BooleanCondition.conditions": {"fullname": "snuba_sdk.BooleanCondition.conditions", "modulename": "snuba_sdk", "qualname": "BooleanCondition.conditions", "kind": "variable", "doc": "
\n", "annotation": ": Sequence[Union[snuba_sdk.conditions.BooleanCondition, snuba_sdk.conditions.Condition]]"}, "snuba_sdk.BooleanCondition.validate": {"fullname": "snuba_sdk.BooleanCondition.validate", "modulename": "snuba_sdk", "qualname": "BooleanCondition.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.BooleanOp": {"fullname": "snuba_sdk.BooleanOp", "modulename": "snuba_sdk", "qualname": "BooleanOp", "kind": "class", "doc": "An enumeration.
\n", "bases": "enum.Enum"}, "snuba_sdk.BooleanOp.AND": {"fullname": "snuba_sdk.BooleanOp.AND", "modulename": "snuba_sdk", "qualname": "BooleanOp.AND", "kind": "variable", "doc": "
\n", "default_value": "<BooleanOp.AND: 'AND'>"}, "snuba_sdk.BooleanOp.OR": {"fullname": "snuba_sdk.BooleanOp.OR", "modulename": "snuba_sdk", "qualname": "BooleanOp.OR", "kind": "variable", "doc": "
\n", "default_value": "<BooleanOp.OR: 'OR'>"}, "snuba_sdk.Column": {"fullname": "snuba_sdk.Column", "modulename": "snuba_sdk", "qualname": "Column", "kind": "class", "doc": "A representation of a single column in the database. Columns are\nexpected to be alpha-numeric, with '.', '_, and
:allowed as well.\nIf the column is subscriptable then you can specify the column in the\nform
subscriptable[key]. The
subscriptableattribute will contain the outer\ncolumn and
key` will contain the inner key.
\n\nParameters \n\n\nname : The column name. \nentity : The entity for that column \n \n\nRaises \n\n\nInvalidColumnError : If the column name is not a string or has an\ninvalid format. \n \n", "bases": "snuba_sdk.expressions.Expression"}, "snuba_sdk.Column.__init__": {"fullname": "snuba_sdk.Column.__init__", "modulename": "snuba_sdk", "qualname": "Column.__init__", "kind": "function", "doc": "
\n", "signature": "(name : str , entity : Union [ snuba_sdk . entity . Entity , NoneType ] = None ) "}, "snuba_sdk.Column.name": {"fullname": "snuba_sdk.Column.name", "modulename": "snuba_sdk", "qualname": "Column.name", "kind": "variable", "doc": "
\n", "annotation": ": str"}, "snuba_sdk.Column.entity": {"fullname": "snuba_sdk.Column.entity", "modulename": "snuba_sdk", "qualname": "Column.entity", "kind": "variable", "doc": "
\n", "annotation": ": Union[snuba_sdk.entity.Entity, NoneType]", "default_value": "None"}, "snuba_sdk.Column.subscriptable": {"fullname": "snuba_sdk.Column.subscriptable", "modulename": "snuba_sdk", "qualname": "Column.subscriptable", "kind": "variable", "doc": "
\n", "annotation": ": Union[str, NoneType]", "default_value": "None"}, "snuba_sdk.Column.key": {"fullname": "snuba_sdk.Column.key", "modulename": "snuba_sdk", "qualname": "Column.key", "kind": "variable", "doc": "
\n", "annotation": ": Union[str, NoneType]", "default_value": "None"}, "snuba_sdk.Column.validate": {"fullname": "snuba_sdk.Column.validate", "modulename": "snuba_sdk", "qualname": "Column.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.Column.validate_data_model": {"fullname": "snuba_sdk.Column.validate_data_model", "modulename": "snuba_sdk", "qualname": "Column.validate_data_model", "kind": "function", "doc": "
\n", "signature": "(self , entity : snuba_sdk . entity . Entity ) -> None : ", "funcdef": "def"}, "snuba_sdk.Condition": {"fullname": "snuba_sdk.Condition", "modulename": "snuba_sdk", "qualname": "Condition", "kind": "class", "doc": "
\n", "bases": "snuba_sdk.expressions.Expression"}, "snuba_sdk.Condition.__init__": {"fullname": "snuba_sdk.Condition.__init__", "modulename": "snuba_sdk", "qualname": "Condition.__init__", "kind": "function", "doc": "
\n", "signature": "(\tlhs : Union [ snuba_sdk . column . Column , snuba_sdk . function . CurriedFunction , snuba_sdk . function . Function ] , \top : snuba_sdk . conditions . Op , \trhs : Union [ snuba_sdk . column . Column , snuba_sdk . function . CurriedFunction , snuba_sdk . function . Function , NoneType , bool , str , bytes , float , int , datetime . date , datetime . datetime , Sequence [ Union [ snuba_sdk . expressions . Expression , NoneType , bool , str , bytes , float , int , datetime . date , datetime . datetime ]]] = None ) "}, "snuba_sdk.Condition.lhs": {"fullname": "snuba_sdk.Condition.lhs", "modulename": "snuba_sdk", "qualname": "Condition.lhs", "kind": "variable", "doc": "
\n", "annotation": ": Union[snuba_sdk.column.Column, snuba_sdk.function.CurriedFunction, snuba_sdk.function.Function]"}, "snuba_sdk.Condition.op": {"fullname": "snuba_sdk.Condition.op", "modulename": "snuba_sdk", "qualname": "Condition.op", "kind": "variable", "doc": "
\n", "annotation": ": snuba_sdk.conditions.Op"}, "snuba_sdk.Condition.rhs": {"fullname": "snuba_sdk.Condition.rhs", "modulename": "snuba_sdk", "qualname": "Condition.rhs", "kind": "variable", "doc": "
\n", "annotation": ": Union[snuba_sdk.column.Column, snuba_sdk.function.CurriedFunction, snuba_sdk.function.Function, NoneType, bool, str, bytes, float, int, datetime.date, datetime.datetime, Sequence[Union[snuba_sdk.expressions.Expression, NoneType, bool, str, bytes, float, int, datetime.date, datetime.datetime]]]", "default_value": "None"}, "snuba_sdk.Condition.validate": {"fullname": "snuba_sdk.Condition.validate", "modulename": "snuba_sdk", "qualname": "Condition.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.CurriedFunction": {"fullname": "snuba_sdk.CurriedFunction", "modulename": "snuba_sdk", "qualname": "CurriedFunction", "kind": "class", "doc": "
\n", "bases": "snuba_sdk.expressions.Expression"}, "snuba_sdk.CurriedFunction.__init__": {"fullname": "snuba_sdk.CurriedFunction.__init__", "modulename": "snuba_sdk", "qualname": "CurriedFunction.__init__", "kind": "function", "doc": "
\n", "signature": "(\tfunction : str , \tinitializers : Union [ Sequence [ Union [ NoneType , bool , str , bytes , float , int , datetime . date , datetime . datetime , snuba_sdk . column . Column ]], NoneType ] = None , \tparameters : Union [ Sequence [ Union [ NoneType , bool , str , bytes , float , int , datetime . date , datetime . datetime , Sequence [ Union [ snuba_sdk . expressions . Expression , NoneType , bool , str , bytes , float , int , datetime . date , datetime . datetime ]], snuba_sdk . column . Column , snuba_sdk . function . CurriedFunction , snuba_sdk . function . Function , snuba_sdk . function . Identifier , snuba_sdk . function . Lambda ]], NoneType ] = None , \talias : Union [ str , NoneType ] = None ) "}, "snuba_sdk.CurriedFunction.function": {"fullname": "snuba_sdk.CurriedFunction.function", "modulename": "snuba_sdk", "qualname": "CurriedFunction.function", "kind": "variable", "doc": "
\n", "annotation": ": str"}, "snuba_sdk.CurriedFunction.initializers": {"fullname": "snuba_sdk.CurriedFunction.initializers", "modulename": "snuba_sdk", "qualname": "CurriedFunction.initializers", "kind": "variable", "doc": "
\n", "annotation": ": Union[Sequence[Union[NoneType, bool, str, bytes, float, int, datetime.date, datetime.datetime, snuba_sdk.column.Column]], NoneType]", "default_value": "None"}, "snuba_sdk.CurriedFunction.parameters": {"fullname": "snuba_sdk.CurriedFunction.parameters", "modulename": "snuba_sdk", "qualname": "CurriedFunction.parameters", "kind": "variable", "doc": "
\n", "annotation": ": Union[Sequence[Union[NoneType, bool, str, bytes, float, int, datetime.date, datetime.datetime, Sequence[Union[snuba_sdk.expressions.Expression, NoneType, bool, str, bytes, float, int, datetime.date, datetime.datetime]], snuba_sdk.column.Column, snuba_sdk.function.CurriedFunction, snuba_sdk.function.Function, snuba_sdk.function.Identifier, snuba_sdk.function.Lambda]], NoneType]", "default_value": "None"}, "snuba_sdk.CurriedFunction.alias": {"fullname": "snuba_sdk.CurriedFunction.alias", "modulename": "snuba_sdk", "qualname": "CurriedFunction.alias", "kind": "variable", "doc": "
\n", "annotation": ": Union[str, NoneType]", "default_value": "None"}, "snuba_sdk.CurriedFunction.validate": {"fullname": "snuba_sdk.CurriedFunction.validate", "modulename": "snuba_sdk", "qualname": "CurriedFunction.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.Direction": {"fullname": "snuba_sdk.Direction", "modulename": "snuba_sdk", "qualname": "Direction", "kind": "class", "doc": "An enumeration.
\n", "bases": "enum.Enum"}, "snuba_sdk.Direction.ASC": {"fullname": "snuba_sdk.Direction.ASC", "modulename": "snuba_sdk", "qualname": "Direction.ASC", "kind": "variable", "doc": "
\n", "default_value": "<Direction.ASC: 'ASC'>"}, "snuba_sdk.Direction.DESC": {"fullname": "snuba_sdk.Direction.DESC", "modulename": "snuba_sdk", "qualname": "Direction.DESC", "kind": "variable", "doc": "
\n", "default_value": "<Direction.DESC: 'DESC'>"}, "snuba_sdk.Entity": {"fullname": "snuba_sdk.Entity", "modulename": "snuba_sdk", "qualname": "Entity", "kind": "class", "doc": "
\n", "bases": "snuba_sdk.expressions.Expression"}, "snuba_sdk.Entity.__init__": {"fullname": "snuba_sdk.Entity.__init__", "modulename": "snuba_sdk", "qualname": "Entity.__init__", "kind": "function", "doc": "
\n", "signature": "(\tname : str , \talias : Union [ str , NoneType ] = None , \tsample : Union [ float , NoneType ] = None , \tdata_model : Union [ snuba_sdk . schema . EntityModel , NoneType ] = None ) "}, "snuba_sdk.Entity.name": {"fullname": "snuba_sdk.Entity.name", "modulename": "snuba_sdk", "qualname": "Entity.name", "kind": "variable", "doc": "
\n", "annotation": ": str"}, "snuba_sdk.Entity.alias": {"fullname": "snuba_sdk.Entity.alias", "modulename": "snuba_sdk", "qualname": "Entity.alias", "kind": "variable", "doc": "
\n", "annotation": ": Union[str, NoneType]", "default_value": "None"}, "snuba_sdk.Entity.sample": {"fullname": "snuba_sdk.Entity.sample", "modulename": "snuba_sdk", "qualname": "Entity.sample", "kind": "variable", "doc": "
\n", "annotation": ": Union[float, NoneType]", "default_value": "None"}, "snuba_sdk.Entity.data_model": {"fullname": "snuba_sdk.Entity.data_model", "modulename": "snuba_sdk", "qualname": "Entity.data_model", "kind": "variable", "doc": "
\n", "annotation": ": Union[snuba_sdk.schema.EntityModel, NoneType]", "default_value": "None"}, "snuba_sdk.Entity.validate": {"fullname": "snuba_sdk.Entity.validate", "modulename": "snuba_sdk", "qualname": "Entity.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.Flags": {"fullname": "snuba_sdk.Flags", "modulename": "snuba_sdk", "qualname": "Flags", "kind": "class", "doc": "
\n"}, "snuba_sdk.Flags.__init__": {"fullname": "snuba_sdk.Flags.__init__", "modulename": "snuba_sdk", "qualname": "Flags.__init__", "kind": "function", "doc": "
\n", "signature": "(\ttotals : 'bool | None' = None , \tconsistent : 'bool | None' = None , \tturbo : 'bool | None' = None , \tdebug : 'bool | None' = None , \tdry_run : 'bool | None' = None , \tlegacy : 'bool | None' = None ) "}, "snuba_sdk.Flags.totals": {"fullname": "snuba_sdk.Flags.totals", "modulename": "snuba_sdk", "qualname": "Flags.totals", "kind": "variable", "doc": "
\n", "annotation": ": 'bool | None'", "default_value": "None"}, "snuba_sdk.Flags.consistent": {"fullname": "snuba_sdk.Flags.consistent", "modulename": "snuba_sdk", "qualname": "Flags.consistent", "kind": "variable", "doc": "
\n", "annotation": ": 'bool | None'", "default_value": "None"}, "snuba_sdk.Flags.turbo": {"fullname": "snuba_sdk.Flags.turbo", "modulename": "snuba_sdk", "qualname": "Flags.turbo", "kind": "variable", "doc": "
\n", "annotation": ": 'bool | None'", "default_value": "None"}, "snuba_sdk.Flags.debug": {"fullname": "snuba_sdk.Flags.debug", "modulename": "snuba_sdk", "qualname": "Flags.debug", "kind": "variable", "doc": "
\n", "annotation": ": 'bool | None'", "default_value": "None"}, "snuba_sdk.Flags.dry_run": {"fullname": "snuba_sdk.Flags.dry_run", "modulename": "snuba_sdk", "qualname": "Flags.dry_run", "kind": "variable", "doc": "
\n", "annotation": ": 'bool | None'", "default_value": "None"}, "snuba_sdk.Flags.legacy": {"fullname": "snuba_sdk.Flags.legacy", "modulename": "snuba_sdk", "qualname": "Flags.legacy", "kind": "variable", "doc": "
\n", "annotation": ": 'bool | None'", "default_value": "None"}, "snuba_sdk.Flags.validate": {"fullname": "snuba_sdk.Flags.validate", "modulename": "snuba_sdk", "qualname": "Flags.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.Flags.to_dict": {"fullname": "snuba_sdk.Flags.to_dict", "modulename": "snuba_sdk", "qualname": "Flags.to_dict", "kind": "function", "doc": "
\n", "signature": "(self ) -> 'dict[str, bool]' : ", "funcdef": "def"}, "snuba_sdk.Formula": {"fullname": "snuba_sdk.Formula", "modulename": "snuba_sdk", "qualname": "Formula", "kind": "class", "doc": "
\n"}, "snuba_sdk.Formula.__init__": {"fullname": "snuba_sdk.Formula.__init__", "modulename": "snuba_sdk", "qualname": "Formula.__init__", "kind": "function", "doc": "
\n", "signature": "(\tfunction_name : str , \tparameters : Union [ Sequence [ Union [ snuba_sdk . formula . Formula , snuba_sdk . timeseries . Timeseries , float , int , str ]], NoneType ] = None , \tfilters : Union [ Sequence [ Union [ snuba_sdk . conditions . BooleanCondition , snuba_sdk . conditions . Condition ]], NoneType ] = None , \tgroupby : 'Optional[list[Column | AliasedExpression]]' = None ) "}, "snuba_sdk.Formula.function_name": {"fullname": "snuba_sdk.Formula.function_name", "modulename": "snuba_sdk", "qualname": "Formula.function_name", "kind": "variable", "doc": "
\n", "annotation": ": str"}, "snuba_sdk.Formula.parameters": {"fullname": "snuba_sdk.Formula.parameters", "modulename": "snuba_sdk", "qualname": "Formula.parameters", "kind": "variable", "doc": "
\n", "annotation": ": Union[Sequence[Union[snuba_sdk.formula.Formula, snuba_sdk.timeseries.Timeseries, float, int, str]], NoneType]", "default_value": "None"}, "snuba_sdk.Formula.filters": {"fullname": "snuba_sdk.Formula.filters", "modulename": "snuba_sdk", "qualname": "Formula.filters", "kind": "variable", "doc": "
\n", "annotation": ": Union[Sequence[Union[snuba_sdk.conditions.BooleanCondition, snuba_sdk.conditions.Condition]], NoneType]", "default_value": "None"}, "snuba_sdk.Formula.groupby": {"fullname": "snuba_sdk.Formula.groupby", "modulename": "snuba_sdk", "qualname": "Formula.groupby", "kind": "variable", "doc": "
\n", "annotation": ": 'Optional[list[Column | AliasedExpression]]'", "default_value": "None"}, "snuba_sdk.Formula.validate": {"fullname": "snuba_sdk.Formula.validate", "modulename": "snuba_sdk", "qualname": "Formula.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.Formula.set_parameters": {"fullname": "snuba_sdk.Formula.set_parameters", "modulename": "snuba_sdk", "qualname": "Formula.set_parameters", "kind": "function", "doc": "
\n", "signature": "(\tself , \tparameters : Sequence [ Union [ snuba_sdk . formula . Formula , snuba_sdk . timeseries . Timeseries , float , int , str ]] ) -> snuba_sdk . formula . Formula : ", "funcdef": "def"}, "snuba_sdk.Formula.set_filters": {"fullname": "snuba_sdk.Formula.set_filters", "modulename": "snuba_sdk", "qualname": "Formula.set_filters", "kind": "function", "doc": "
\n", "signature": "(self , filters : 'ConditionGroup | None' ) -> snuba_sdk . formula . Formula : ", "funcdef": "def"}, "snuba_sdk.Formula.set_groupby": {"fullname": "snuba_sdk.Formula.set_groupby", "modulename": "snuba_sdk", "qualname": "Formula.set_groupby", "kind": "function", "doc": "
\n", "signature": "(\tself , \tgroupby : 'list[Column | AliasedExpression] | None' ) -> snuba_sdk . formula . Formula : ", "funcdef": "def"}, "snuba_sdk.Function": {"fullname": "snuba_sdk.Function", "modulename": "snuba_sdk", "qualname": "Function", "kind": "class", "doc": "
\n", "bases": "snuba_sdk.function.CurriedFunction"}, "snuba_sdk.Function.__init__": {"fullname": "snuba_sdk.Function.__init__", "modulename": "snuba_sdk", "qualname": "Function.__init__", "kind": "function", "doc": "
\n", "signature": "(\tfunction : str , \tparameters : Union [ Sequence [ Union [ NoneType , bool , str , bytes , float , int , datetime . date , datetime . datetime , Sequence [ Union [ snuba_sdk . expressions . Expression , NoneType , bool , str , bytes , float , int , datetime . date , datetime . datetime ]], snuba_sdk . column . Column , snuba_sdk . function . CurriedFunction , snuba_sdk . function . Function , snuba_sdk . function . Identifier , snuba_sdk . function . Lambda ]], NoneType ] = None , \talias : Union [ str , NoneType ] = None ) "}, "snuba_sdk.Function.initializers": {"fullname": "snuba_sdk.Function.initializers", "modulename": "snuba_sdk", "qualname": "Function.initializers", "kind": "variable", "doc": "
\n", "annotation": ": Union[Sequence[Union[NoneType, bool, str, bytes, float, int, datetime.date, datetime.datetime, snuba_sdk.column.Column]], NoneType]", "default_value": "None"}, "snuba_sdk.Granularity": {"fullname": "snuba_sdk.Granularity", "modulename": "snuba_sdk", "qualname": "Granularity", "kind": "class", "doc": "
\n", "bases": "snuba_sdk.expressions.Expression"}, "snuba_sdk.Granularity.__init__": {"fullname": "snuba_sdk.Granularity.__init__", "modulename": "snuba_sdk", "qualname": "Granularity.__init__", "kind": "function", "doc": "
\n", "signature": "(granularity : int ) "}, "snuba_sdk.Granularity.granularity": {"fullname": "snuba_sdk.Granularity.granularity", "modulename": "snuba_sdk", "qualname": "Granularity.granularity", "kind": "variable", "doc": "
\n", "annotation": ": int"}, "snuba_sdk.Granularity.validate": {"fullname": "snuba_sdk.Granularity.validate", "modulename": "snuba_sdk", "qualname": "Granularity.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.Identifier": {"fullname": "snuba_sdk.Identifier", "modulename": "snuba_sdk", "qualname": "Identifier", "kind": "class", "doc": "
\n", "bases": "snuba_sdk.expressions.Expression"}, "snuba_sdk.Identifier.__init__": {"fullname": "snuba_sdk.Identifier.__init__", "modulename": "snuba_sdk", "qualname": "Identifier.__init__", "kind": "function", "doc": "
\n", "signature": "(name : str ) "}, "snuba_sdk.Identifier.name": {"fullname": "snuba_sdk.Identifier.name", "modulename": "snuba_sdk", "qualname": "Identifier.name", "kind": "variable", "doc": "
\n", "annotation": ": str"}, "snuba_sdk.Identifier.validate": {"fullname": "snuba_sdk.Identifier.validate", "modulename": "snuba_sdk", "qualname": "Identifier.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.Join": {"fullname": "snuba_sdk.Join", "modulename": "snuba_sdk", "qualname": "Join", "kind": "class", "doc": "A collection of relationships that is used in the MATCH section of\nthe SnQL query. Must contain at least one Relationship, and will make\nsure that Entity aliases are not used by different Entities.
\n\nParameters \n\n\nrelationships : The relationships in the join. \n \n\nRaises \n\n\nInvalidExpressionError : If two different Entities are using\nthe same alias, this will be raised. \n \n", "bases": "snuba_sdk.expressions.Expression"}, "snuba_sdk.Join.__init__": {"fullname": "snuba_sdk.Join.__init__", "modulename": "snuba_sdk", "qualname": "Join.__init__", "kind": "function", "doc": "
\n", "signature": "(relationships : Sequence [ snuba_sdk . relationships . Relationship ] ) "}, "snuba_sdk.Join.relationships": {"fullname": "snuba_sdk.Join.relationships", "modulename": "snuba_sdk", "qualname": "Join.relationships", "kind": "variable", "doc": "
\n", "annotation": ": Sequence[snuba_sdk.relationships.Relationship]"}, "snuba_sdk.Join.get_alias_mappings": {"fullname": "snuba_sdk.Join.get_alias_mappings", "modulename": "snuba_sdk", "qualname": "Join.get_alias_mappings", "kind": "function", "doc": "
\n", "signature": "(self ) -> 'set[tuple[str, str]]' : ", "funcdef": "def"}, "snuba_sdk.Join.get_entities": {"fullname": "snuba_sdk.Join.get_entities", "modulename": "snuba_sdk", "qualname": "Join.get_entities", "kind": "function", "doc": "
\n", "signature": "(self ) -> 'set[Entity]' : ", "funcdef": "def"}, "snuba_sdk.Join.validate": {"fullname": "snuba_sdk.Join.validate", "modulename": "snuba_sdk", "qualname": "Join.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.Lambda": {"fullname": "snuba_sdk.Lambda", "modulename": "snuba_sdk", "qualname": "Lambda", "kind": "class", "doc": "
\n", "bases": "snuba_sdk.expressions.Expression"}, "snuba_sdk.Lambda.__init__": {"fullname": "snuba_sdk.Lambda.__init__", "modulename": "snuba_sdk", "qualname": "Lambda.__init__", "kind": "function", "doc": "
\n", "signature": "(\tidentifiers : Sequence [ str ] , \ttransformation : snuba_sdk . function . CurriedFunction ) "}, "snuba_sdk.Lambda.identifiers": {"fullname": "snuba_sdk.Lambda.identifiers", "modulename": "snuba_sdk", "qualname": "Lambda.identifiers", "kind": "variable", "doc": "
\n", "annotation": ": Sequence[str]"}, "snuba_sdk.Lambda.transformation": {"fullname": "snuba_sdk.Lambda.transformation", "modulename": "snuba_sdk", "qualname": "Lambda.transformation", "kind": "variable", "doc": "
\n", "annotation": ": snuba_sdk.function.CurriedFunction"}, "snuba_sdk.Lambda.validate": {"fullname": "snuba_sdk.Lambda.validate", "modulename": "snuba_sdk", "qualname": "Lambda.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.Limit": {"fullname": "snuba_sdk.Limit", "modulename": "snuba_sdk", "qualname": "Limit", "kind": "class", "doc": "
\n", "bases": "snuba_sdk.expressions.Expression"}, "snuba_sdk.Limit.__init__": {"fullname": "snuba_sdk.Limit.__init__", "modulename": "snuba_sdk", "qualname": "Limit.__init__", "kind": "function", "doc": "
\n", "signature": "(limit : int ) "}, "snuba_sdk.Limit.limit": {"fullname": "snuba_sdk.Limit.limit", "modulename": "snuba_sdk", "qualname": "Limit.limit", "kind": "variable", "doc": "
\n", "annotation": ": int"}, "snuba_sdk.Limit.validate": {"fullname": "snuba_sdk.Limit.validate", "modulename": "snuba_sdk", "qualname": "Limit.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.LimitBy": {"fullname": "snuba_sdk.LimitBy", "modulename": "snuba_sdk", "qualname": "LimitBy", "kind": "class", "doc": "
\n", "bases": "snuba_sdk.expressions.Expression"}, "snuba_sdk.LimitBy.__init__": {"fullname": "snuba_sdk.LimitBy.__init__", "modulename": "snuba_sdk", "qualname": "LimitBy.__init__", "kind": "function", "doc": "
\n", "signature": "(columns : Sequence [ snuba_sdk . column . Column ] , count : int ) "}, "snuba_sdk.LimitBy.columns": {"fullname": "snuba_sdk.LimitBy.columns", "modulename": "snuba_sdk", "qualname": "LimitBy.columns", "kind": "variable", "doc": "
\n", "annotation": ": Sequence[snuba_sdk.column.Column]"}, "snuba_sdk.LimitBy.count": {"fullname": "snuba_sdk.LimitBy.count", "modulename": "snuba_sdk", "qualname": "LimitBy.count", "kind": "variable", "doc": "
\n", "annotation": ": int"}, "snuba_sdk.LimitBy.validate": {"fullname": "snuba_sdk.LimitBy.validate", "modulename": "snuba_sdk", "qualname": "LimitBy.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.Metric": {"fullname": "snuba_sdk.Metric", "modulename": "snuba_sdk", "qualname": "Metric", "kind": "class", "doc": "Metric represents a raw metric that is being populated. It can be created with\none of public name, mri or raw ID.
\n"}, "snuba_sdk.Metric.__init__": {"fullname": "snuba_sdk.Metric.__init__", "modulename": "snuba_sdk", "qualname": "Metric.__init__", "kind": "function", "doc": "
\n", "signature": "(\tpublic_name : 'str | None' = None , \tmri : 'str | None' = None , \tid : 'int | None' = None , \tentity : 'str | None' = None ) "}, "snuba_sdk.Metric.public_name": {"fullname": "snuba_sdk.Metric.public_name", "modulename": "snuba_sdk", "qualname": "Metric.public_name", "kind": "variable", "doc": "
\n", "annotation": ": 'str | None'", "default_value": "None"}, "snuba_sdk.Metric.mri": {"fullname": "snuba_sdk.Metric.mri", "modulename": "snuba_sdk", "qualname": "Metric.mri", "kind": "variable", "doc": "
\n", "annotation": ": 'str | None'", "default_value": "None"}, "snuba_sdk.Metric.id": {"fullname": "snuba_sdk.Metric.id", "modulename": "snuba_sdk", "qualname": "Metric.id", "kind": "variable", "doc": "
\n", "annotation": ": 'int | None'", "default_value": "None"}, "snuba_sdk.Metric.entity": {"fullname": "snuba_sdk.Metric.entity", "modulename": "snuba_sdk", "qualname": "Metric.entity", "kind": "variable", "doc": "
\n", "annotation": ": 'str | None'", "default_value": "None"}, "snuba_sdk.Metric.get_fields": {"fullname": "snuba_sdk.Metric.get_fields", "modulename": "snuba_sdk", "qualname": "Metric.get_fields", "kind": "function", "doc": "
\n", "signature": "(self ) -> Sequence [ str ] : ", "funcdef": "def"}, "snuba_sdk.Metric.validate": {"fullname": "snuba_sdk.Metric.validate", "modulename": "snuba_sdk", "qualname": "Metric.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.Metric.set_mri": {"fullname": "snuba_sdk.Metric.set_mri", "modulename": "snuba_sdk", "qualname": "Metric.set_mri", "kind": "function", "doc": "
\n", "signature": "(self , mri : str ) -> snuba_sdk . timeseries . Metric : ", "funcdef": "def"}, "snuba_sdk.Metric.set_public_name": {"fullname": "snuba_sdk.Metric.set_public_name", "modulename": "snuba_sdk", "qualname": "Metric.set_public_name", "kind": "function", "doc": "
\n", "signature": "(self , public_name : str ) -> snuba_sdk . timeseries . Metric : ", "funcdef": "def"}, "snuba_sdk.Metric.set_id": {"fullname": "snuba_sdk.Metric.set_id", "modulename": "snuba_sdk", "qualname": "Metric.set_id", "kind": "function", "doc": "
\n", "signature": "(self , id : int ) -> snuba_sdk . timeseries . Metric : ", "funcdef": "def"}, "snuba_sdk.Metric.set_entity": {"fullname": "snuba_sdk.Metric.set_entity", "modulename": "snuba_sdk", "qualname": "Metric.set_entity", "kind": "function", "doc": "
\n", "signature": "(self , entity : str ) -> snuba_sdk . timeseries . Metric : ", "funcdef": "def"}, "snuba_sdk.MetricsQuery": {"fullname": "snuba_sdk.MetricsQuery", "modulename": "snuba_sdk", "qualname": "MetricsQuery", "kind": "class", "doc": "A query on a set of timeseries. This class gets translated into a Snuba request string\nthat returns a list of timeseries data. In order to allow this class to be built incrementally,\nit is not validated until it is serialized. Any specified filters or groupby fields are pushed\ndown to each of the Timeseries in the query field. It is immutable, so any set functions return\na new copy of the query, which also allows chaining calls.
\n\nThis class is distinct from the Query class to allow for more specific validation and to provide\na simpler syntax for writing timeseries queries, which have fewer available features.
\n", "bases": "snuba_sdk.query.BaseQuery"}, "snuba_sdk.MetricsQuery.__init__": {"fullname": "snuba_sdk.MetricsQuery.__init__", "modulename": "snuba_sdk", "qualname": "MetricsQuery.__init__", "kind": "function", "doc": "
\n", "signature": "(\tquery : 'Timeseries | Formula | None' = None , \tstart : 'datetime | None' = None , \tend : 'datetime | None' = None , \trollup : 'Rollup | None' = None , \tscope : 'MetricsScope | None' = None , \tlimit : 'Limit | None' = None , \toffset : 'Offset | None' = None , \tindexer_mappings : 'dict[str, str | int] | None' = None ) "}, "snuba_sdk.MetricsQuery.query": {"fullname": "snuba_sdk.MetricsQuery.query", "modulename": "snuba_sdk", "qualname": "MetricsQuery.query", "kind": "variable", "doc": "
\n", "annotation": ": 'Timeseries | Formula | None'", "default_value": "None"}, "snuba_sdk.MetricsQuery.start": {"fullname": "snuba_sdk.MetricsQuery.start", "modulename": "snuba_sdk", "qualname": "MetricsQuery.start", "kind": "variable", "doc": "
\n", "annotation": ": 'datetime | None'", "default_value": "None"}, "snuba_sdk.MetricsQuery.end": {"fullname": "snuba_sdk.MetricsQuery.end", "modulename": "snuba_sdk", "qualname": "MetricsQuery.end", "kind": "variable", "doc": "
\n", "annotation": ": 'datetime | None'", "default_value": "None"}, "snuba_sdk.MetricsQuery.rollup": {"fullname": "snuba_sdk.MetricsQuery.rollup", "modulename": "snuba_sdk", "qualname": "MetricsQuery.rollup", "kind": "variable", "doc": "
\n", "annotation": ": 'Rollup | None'", "default_value": "None"}, "snuba_sdk.MetricsQuery.scope": {"fullname": "snuba_sdk.MetricsQuery.scope", "modulename": "snuba_sdk", "qualname": "MetricsQuery.scope", "kind": "variable", "doc": "
\n", "annotation": ": 'MetricsScope | None'", "default_value": "None"}, "snuba_sdk.MetricsQuery.limit": {"fullname": "snuba_sdk.MetricsQuery.limit", "modulename": "snuba_sdk", "qualname": "MetricsQuery.limit", "kind": "variable", "doc": "
\n", "annotation": ": 'Limit | None'", "default_value": "None"}, "snuba_sdk.MetricsQuery.offset": {"fullname": "snuba_sdk.MetricsQuery.offset", "modulename": "snuba_sdk", "qualname": "MetricsQuery.offset", "kind": "variable", "doc": "
\n", "annotation": ": 'Offset | None'", "default_value": "None"}, "snuba_sdk.MetricsQuery.indexer_mappings": {"fullname": "snuba_sdk.MetricsQuery.indexer_mappings", "modulename": "snuba_sdk", "qualname": "MetricsQuery.indexer_mappings", "kind": "variable", "doc": "
\n", "annotation": ": 'dict[str, str | int] | None'", "default_value": "None"}, "snuba_sdk.MetricsQuery.set_query": {"fullname": "snuba_sdk.MetricsQuery.set_query", "modulename": "snuba_sdk", "qualname": "MetricsQuery.set_query", "kind": "function", "doc": "
\n", "signature": "(\tself , \tquery : 'Formula | Timeseries' ) -> snuba_sdk . metrics_query . MetricsQuery : ", "funcdef": "def"}, "snuba_sdk.MetricsQuery.set_start": {"fullname": "snuba_sdk.MetricsQuery.set_start", "modulename": "snuba_sdk", "qualname": "MetricsQuery.set_start", "kind": "function", "doc": "
\n", "signature": "(self , start : datetime . datetime ) -> snuba_sdk . metrics_query . MetricsQuery : ", "funcdef": "def"}, "snuba_sdk.MetricsQuery.set_end": {"fullname": "snuba_sdk.MetricsQuery.set_end", "modulename": "snuba_sdk", "qualname": "MetricsQuery.set_end", "kind": "function", "doc": "
\n", "signature": "(self , end : datetime . datetime ) -> snuba_sdk . metrics_query . MetricsQuery : ", "funcdef": "def"}, "snuba_sdk.MetricsQuery.set_rollup": {"fullname": "snuba_sdk.MetricsQuery.set_rollup", "modulename": "snuba_sdk", "qualname": "MetricsQuery.set_rollup", "kind": "function", "doc": "
\n", "signature": "(\tself , \trollup : snuba_sdk . timeseries . Rollup ) -> snuba_sdk . metrics_query . MetricsQuery : ", "funcdef": "def"}, "snuba_sdk.MetricsQuery.set_scope": {"fullname": "snuba_sdk.MetricsQuery.set_scope", "modulename": "snuba_sdk", "qualname": "MetricsQuery.set_scope", "kind": "function", "doc": "
\n", "signature": "(\tself , \tscope : snuba_sdk . timeseries . MetricsScope ) -> snuba_sdk . metrics_query . MetricsQuery : ", "funcdef": "def"}, "snuba_sdk.MetricsQuery.set_limit": {"fullname": "snuba_sdk.MetricsQuery.set_limit", "modulename": "snuba_sdk", "qualname": "MetricsQuery.set_limit", "kind": "function", "doc": "
\n", "signature": "(self , limit : int ) -> snuba_sdk . metrics_query . MetricsQuery : ", "funcdef": "def"}, "snuba_sdk.MetricsQuery.set_offset": {"fullname": "snuba_sdk.MetricsQuery.set_offset", "modulename": "snuba_sdk", "qualname": "MetricsQuery.set_offset", "kind": "function", "doc": "
\n", "signature": "(self , offset : int ) -> snuba_sdk . metrics_query . MetricsQuery : ", "funcdef": "def"}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"fullname": "snuba_sdk.MetricsQuery.set_indexer_mappings", "modulename": "snuba_sdk", "qualname": "MetricsQuery.set_indexer_mappings", "kind": "function", "doc": "
\n", "signature": "(\tself , \tindexer_mappings : 'dict[str, str | int]' ) -> snuba_sdk . metrics_query . MetricsQuery : ", "funcdef": "def"}, "snuba_sdk.MetricsQuery.validate": {"fullname": "snuba_sdk.MetricsQuery.validate", "modulename": "snuba_sdk", "qualname": "MetricsQuery.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.MetricsQuery.serialize": {"fullname": "snuba_sdk.MetricsQuery.serialize", "modulename": "snuba_sdk", "qualname": "MetricsQuery.serialize", "kind": "function", "doc": "
\n", "signature": "(self ) -> str : ", "funcdef": "def"}, "snuba_sdk.MetricsQuery.print": {"fullname": "snuba_sdk.MetricsQuery.print", "modulename": "snuba_sdk", "qualname": "MetricsQuery.print", "kind": "function", "doc": "
\n", "signature": "(self ) -> str : ", "funcdef": "def"}, "snuba_sdk.MetricsQuery.serialize_to_mql": {"fullname": "snuba_sdk.MetricsQuery.serialize_to_mql", "modulename": "snuba_sdk", "qualname": "MetricsQuery.serialize_to_mql", "kind": "function", "doc": "
\n", "signature": "(self ) -> 'dict[str, str | dict[str, Any]]' : ", "funcdef": "def"}, "snuba_sdk.MetricsScope": {"fullname": "snuba_sdk.MetricsScope", "modulename": "snuba_sdk", "qualname": "MetricsScope", "kind": "class", "doc": "This contains all the meta information necessary to resolve a metric and to safely query\nthe metrics dataset. All these values get automatically added to the query conditions.\nThe idea of this class is to contain all the filter values that are not represented by\ntags in the API.
\n\nuse_case_id is treated separately since it can be derived separate from the MRIs of the\nmetrics in the outer query.
\n"}, "snuba_sdk.MetricsScope.__init__": {"fullname": "snuba_sdk.MetricsScope.__init__", "modulename": "snuba_sdk", "qualname": "MetricsScope.__init__", "kind": "function", "doc": "
\n", "signature": "(\torg_ids : 'list[int]' , \tproject_ids : 'list[int]' , \tuse_case_id : 'str | None' = None ) "}, "snuba_sdk.MetricsScope.org_ids": {"fullname": "snuba_sdk.MetricsScope.org_ids", "modulename": "snuba_sdk", "qualname": "MetricsScope.org_ids", "kind": "variable", "doc": "
\n", "annotation": ": 'list[int]'"}, "snuba_sdk.MetricsScope.project_ids": {"fullname": "snuba_sdk.MetricsScope.project_ids", "modulename": "snuba_sdk", "qualname": "MetricsScope.project_ids", "kind": "variable", "doc": "
\n", "annotation": ": 'list[int]'"}, "snuba_sdk.MetricsScope.use_case_id": {"fullname": "snuba_sdk.MetricsScope.use_case_id", "modulename": "snuba_sdk", "qualname": "MetricsScope.use_case_id", "kind": "variable", "doc": "
\n", "annotation": ": 'str | None'", "default_value": "None"}, "snuba_sdk.MetricsScope.validate": {"fullname": "snuba_sdk.MetricsScope.validate", "modulename": "snuba_sdk", "qualname": "MetricsScope.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.MetricsScope.set_use_case_id": {"fullname": "snuba_sdk.MetricsScope.set_use_case_id", "modulename": "snuba_sdk", "qualname": "MetricsScope.set_use_case_id", "kind": "function", "doc": "
\n", "signature": "(self , use_case_id : str ) -> snuba_sdk . timeseries . MetricsScope : ", "funcdef": "def"}, "snuba_sdk.MQLContext": {"fullname": "snuba_sdk.MQLContext", "modulename": "snuba_sdk", "qualname": "MQLContext", "kind": "variable", "doc": "
\n"}, "snuba_sdk.Offset": {"fullname": "snuba_sdk.Offset", "modulename": "snuba_sdk", "qualname": "Offset", "kind": "class", "doc": "
\n", "bases": "snuba_sdk.expressions.Expression"}, "snuba_sdk.Offset.__init__": {"fullname": "snuba_sdk.Offset.__init__", "modulename": "snuba_sdk", "qualname": "Offset.__init__", "kind": "function", "doc": "
\n", "signature": "(offset : int ) "}, "snuba_sdk.Offset.offset": {"fullname": "snuba_sdk.Offset.offset", "modulename": "snuba_sdk", "qualname": "Offset.offset", "kind": "variable", "doc": "
\n", "annotation": ": int"}, "snuba_sdk.Offset.validate": {"fullname": "snuba_sdk.Offset.validate", "modulename": "snuba_sdk", "qualname": "Offset.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.Op": {"fullname": "snuba_sdk.Op", "modulename": "snuba_sdk", "qualname": "Op", "kind": "class", "doc": "An enumeration.
\n", "bases": "enum.Enum"}, "snuba_sdk.Op.GT": {"fullname": "snuba_sdk.Op.GT", "modulename": "snuba_sdk", "qualname": "Op.GT", "kind": "variable", "doc": "
\n", "default_value": "<Op.GT: '>'>"}, "snuba_sdk.Op.LT": {"fullname": "snuba_sdk.Op.LT", "modulename": "snuba_sdk", "qualname": "Op.LT", "kind": "variable", "doc": "
\n", "default_value": "<Op.LT: '<'>"}, "snuba_sdk.Op.GTE": {"fullname": "snuba_sdk.Op.GTE", "modulename": "snuba_sdk", "qualname": "Op.GTE", "kind": "variable", "doc": "
\n", "default_value": "<Op.GTE: '>='>"}, "snuba_sdk.Op.LTE": {"fullname": "snuba_sdk.Op.LTE", "modulename": "snuba_sdk", "qualname": "Op.LTE", "kind": "variable", "doc": "
\n", "default_value": "<Op.LTE: '<='>"}, "snuba_sdk.Op.EQ": {"fullname": "snuba_sdk.Op.EQ", "modulename": "snuba_sdk", "qualname": "Op.EQ", "kind": "variable", "doc": "
\n", "default_value": "<Op.EQ: '='>"}, "snuba_sdk.Op.NEQ": {"fullname": "snuba_sdk.Op.NEQ", "modulename": "snuba_sdk", "qualname": "Op.NEQ", "kind": "variable", "doc": "
\n", "default_value": "<Op.NEQ: '!='>"}, "snuba_sdk.Op.IN": {"fullname": "snuba_sdk.Op.IN", "modulename": "snuba_sdk", "qualname": "Op.IN", "kind": "variable", "doc": "
\n", "default_value": "<Op.IN: 'IN'>"}, "snuba_sdk.Op.NOT_IN": {"fullname": "snuba_sdk.Op.NOT_IN", "modulename": "snuba_sdk", "qualname": "Op.NOT_IN", "kind": "variable", "doc": "
\n", "default_value": "<Op.NOT_IN: 'NOT IN'>"}, "snuba_sdk.Op.LIKE": {"fullname": "snuba_sdk.Op.LIKE", "modulename": "snuba_sdk", "qualname": "Op.LIKE", "kind": "variable", "doc": "
\n", "default_value": "<Op.LIKE: 'LIKE'>"}, "snuba_sdk.Op.NOT_LIKE": {"fullname": "snuba_sdk.Op.NOT_LIKE", "modulename": "snuba_sdk", "qualname": "Op.NOT_LIKE", "kind": "variable", "doc": "
\n", "default_value": "<Op.NOT_LIKE: 'NOT LIKE'>"}, "snuba_sdk.Op.IS_NULL": {"fullname": "snuba_sdk.Op.IS_NULL", "modulename": "snuba_sdk", "qualname": "Op.IS_NULL", "kind": "variable", "doc": "
\n", "default_value": "<Op.IS_NULL: 'IS NULL'>"}, "snuba_sdk.Op.IS_NOT_NULL": {"fullname": "snuba_sdk.Op.IS_NOT_NULL", "modulename": "snuba_sdk", "qualname": "Op.IS_NOT_NULL", "kind": "variable", "doc": "
\n", "default_value": "<Op.IS_NOT_NULL: 'IS NOT NULL'>"}, "snuba_sdk.Op.NOT": {"fullname": "snuba_sdk.Op.NOT", "modulename": "snuba_sdk", "qualname": "Op.NOT", "kind": "variable", "doc": "
\n", "default_value": "<Op.NOT: '!'>"}, "snuba_sdk.Or": {"fullname": "snuba_sdk.Or", "modulename": "snuba_sdk", "qualname": "Or", "kind": "class", "doc": "
\n", "bases": "snuba_sdk.conditions.BooleanCondition"}, "snuba_sdk.Or.__init__": {"fullname": "snuba_sdk.Or.__init__", "modulename": "snuba_sdk", "qualname": "Or.__init__", "kind": "function", "doc": "
\n", "signature": "(\tconditions : Sequence [ Union [ snuba_sdk . conditions . BooleanCondition , snuba_sdk . conditions . Condition ]] = < factory > ) "}, "snuba_sdk.Or.op": {"fullname": "snuba_sdk.Or.op", "modulename": "snuba_sdk", "qualname": "Or.op", "kind": "variable", "doc": "
\n", "annotation": ": snuba_sdk.conditions.BooleanOp", "default_value": "<BooleanOp.OR: 'OR'>"}, "snuba_sdk.Or.conditions": {"fullname": "snuba_sdk.Or.conditions", "modulename": "snuba_sdk", "qualname": "Or.conditions", "kind": "variable", "doc": "
\n", "annotation": ": Sequence[Union[snuba_sdk.conditions.BooleanCondition, snuba_sdk.conditions.Condition]]"}, "snuba_sdk.OrderBy": {"fullname": "snuba_sdk.OrderBy", "modulename": "snuba_sdk", "qualname": "OrderBy", "kind": "class", "doc": "
\n", "bases": "snuba_sdk.expressions.Expression"}, "snuba_sdk.OrderBy.__init__": {"fullname": "snuba_sdk.OrderBy.__init__", "modulename": "snuba_sdk", "qualname": "OrderBy.__init__", "kind": "function", "doc": "
\n", "signature": "(\texp : Union [ snuba_sdk . column . Column , snuba_sdk . function . CurriedFunction , snuba_sdk . function . Function ] , \tdirection : snuba_sdk . orderby . Direction ) "}, "snuba_sdk.OrderBy.exp": {"fullname": "snuba_sdk.OrderBy.exp", "modulename": "snuba_sdk", "qualname": "OrderBy.exp", "kind": "variable", "doc": "
\n", "annotation": ": Union[snuba_sdk.column.Column, snuba_sdk.function.CurriedFunction, snuba_sdk.function.Function]"}, "snuba_sdk.OrderBy.direction": {"fullname": "snuba_sdk.OrderBy.direction", "modulename": "snuba_sdk", "qualname": "OrderBy.direction", "kind": "variable", "doc": "
\n", "annotation": ": snuba_sdk.orderby.Direction"}, "snuba_sdk.OrderBy.validate": {"fullname": "snuba_sdk.OrderBy.validate", "modulename": "snuba_sdk", "qualname": "OrderBy.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.Query": {"fullname": "snuba_sdk.Query", "modulename": "snuba_sdk", "qualname": "Query", "kind": "class", "doc": "A code representation of a SnQL query. It is immutable, so any set functions\nreturn a new copy of the query. Unlike Expressions it is possible to\ninstantiate a Query that is invalid. Any of the translation functions will\nvalidate the query before translating them, so the query must be valid before\nthey are called.
\n", "bases": "snuba_sdk.query.BaseQuery"}, "snuba_sdk.Query.__init__": {"fullname": "snuba_sdk.Query.__init__", "modulename": "snuba_sdk", "qualname": "Query.__init__", "kind": "function", "doc": "
\n", "signature": "(\tmatch : Union [ snuba_sdk . entity . Entity , snuba_sdk . relationships . Join , snuba_sdk . query . Query ] , \tselect : Union [ Sequence [ Union [ snuba_sdk . aliased_expression . AliasedExpression , snuba_sdk . column . Column , snuba_sdk . function . CurriedFunction , snuba_sdk . function . Function ]], NoneType ] = None , \tgroupby : Union [ Sequence [ Union [ snuba_sdk . aliased_expression . AliasedExpression , snuba_sdk . column . Column , snuba_sdk . function . CurriedFunction , snuba_sdk . function . Function ]], NoneType ] = None , \tarray_join : Union [ Sequence [ snuba_sdk . column . Column ], NoneType ] = None , \twhere : Union [ Sequence [ Union [ snuba_sdk . conditions . BooleanCondition , snuba_sdk . conditions . Condition ]], NoneType ] = None , \thaving : Union [ Sequence [ Union [ snuba_sdk . conditions . BooleanCondition , snuba_sdk . conditions . Condition ]], NoneType ] = None , \torderby : Union [ Sequence [ snuba_sdk . orderby . OrderBy ], NoneType ] = None , \tlimitby : Union [ snuba_sdk . orderby . LimitBy , NoneType ] = None , \tlimit : Union [ snuba_sdk . expressions . Limit , NoneType ] = None , \toffset : Union [ snuba_sdk . expressions . Offset , NoneType ] = None , \tgranularity : Union [ snuba_sdk . expressions . Granularity , NoneType ] = None , \ttotals : Union [ snuba_sdk . expressions . Totals , NoneType ] = None ) "}, "snuba_sdk.Query.match": {"fullname": "snuba_sdk.Query.match", "modulename": "snuba_sdk", "qualname": "Query.match", "kind": "variable", "doc": "
\n", "annotation": ": Union[snuba_sdk.entity.Entity, snuba_sdk.relationships.Join, snuba_sdk.query.Query]"}, "snuba_sdk.Query.select": {"fullname": "snuba_sdk.Query.select", "modulename": "snuba_sdk", "qualname": "Query.select", "kind": "variable", "doc": "
\n", "annotation": ": Union[Sequence[Union[snuba_sdk.aliased_expression.AliasedExpression, snuba_sdk.column.Column, snuba_sdk.function.CurriedFunction, snuba_sdk.function.Function]], NoneType]", "default_value": "None"}, "snuba_sdk.Query.groupby": {"fullname": "snuba_sdk.Query.groupby", "modulename": "snuba_sdk", "qualname": "Query.groupby", "kind": "variable", "doc": "
\n", "annotation": ": Union[Sequence[Union[snuba_sdk.aliased_expression.AliasedExpression, snuba_sdk.column.Column, snuba_sdk.function.CurriedFunction, snuba_sdk.function.Function]], NoneType]", "default_value": "None"}, "snuba_sdk.Query.array_join": {"fullname": "snuba_sdk.Query.array_join", "modulename": "snuba_sdk", "qualname": "Query.array_join", "kind": "variable", "doc": "
\n", "annotation": ": Union[Sequence[snuba_sdk.column.Column], NoneType]", "default_value": "None"}, "snuba_sdk.Query.where": {"fullname": "snuba_sdk.Query.where", "modulename": "snuba_sdk", "qualname": "Query.where", "kind": "variable", "doc": "
\n", "annotation": ": Union[Sequence[Union[snuba_sdk.conditions.BooleanCondition, snuba_sdk.conditions.Condition]], NoneType]", "default_value": "None"}, "snuba_sdk.Query.having": {"fullname": "snuba_sdk.Query.having", "modulename": "snuba_sdk", "qualname": "Query.having", "kind": "variable", "doc": "
\n", "annotation": ": Union[Sequence[Union[snuba_sdk.conditions.BooleanCondition, snuba_sdk.conditions.Condition]], NoneType]", "default_value": "None"}, "snuba_sdk.Query.orderby": {"fullname": "snuba_sdk.Query.orderby", "modulename": "snuba_sdk", "qualname": "Query.orderby", "kind": "variable", "doc": "
\n", "annotation": ": Union[Sequence[snuba_sdk.orderby.OrderBy], NoneType]", "default_value": "None"}, "snuba_sdk.Query.limitby": {"fullname": "snuba_sdk.Query.limitby", "modulename": "snuba_sdk", "qualname": "Query.limitby", "kind": "variable", "doc": "
\n", "annotation": ": Union[snuba_sdk.orderby.LimitBy, NoneType]", "default_value": "None"}, "snuba_sdk.Query.limit": {"fullname": "snuba_sdk.Query.limit", "modulename": "snuba_sdk", "qualname": "Query.limit", "kind": "variable", "doc": "
\n", "annotation": ": Union[snuba_sdk.expressions.Limit, NoneType]", "default_value": "None"}, "snuba_sdk.Query.offset": {"fullname": "snuba_sdk.Query.offset", "modulename": "snuba_sdk", "qualname": "Query.offset", "kind": "variable", "doc": "
\n", "annotation": ": Union[snuba_sdk.expressions.Offset, NoneType]", "default_value": "None"}, "snuba_sdk.Query.granularity": {"fullname": "snuba_sdk.Query.granularity", "modulename": "snuba_sdk", "qualname": "Query.granularity", "kind": "variable", "doc": "
\n", "annotation": ": Union[snuba_sdk.expressions.Granularity, NoneType]", "default_value": "None"}, "snuba_sdk.Query.totals": {"fullname": "snuba_sdk.Query.totals", "modulename": "snuba_sdk", "qualname": "Query.totals", "kind": "variable", "doc": "
\n", "annotation": ": Union[snuba_sdk.expressions.Totals, NoneType]", "default_value": "None"}, "snuba_sdk.Query.set_match": {"fullname": "snuba_sdk.Query.set_match", "modulename": "snuba_sdk", "qualname": "Query.set_match", "kind": "function", "doc": "
\n", "signature": "(\tself , \tmatch : Union [ snuba_sdk . entity . Entity , snuba_sdk . relationships . Join , snuba_sdk . query . Query ] ) -> snuba_sdk . query . Query : ", "funcdef": "def"}, "snuba_sdk.Query.set_select": {"fullname": "snuba_sdk.Query.set_select", "modulename": "snuba_sdk", "qualname": "Query.set_select", "kind": "function", "doc": "
\n", "signature": "(\tself , \tselect : Sequence [ Union [ snuba_sdk . aliased_expression . AliasedExpression , snuba_sdk . column . Column , snuba_sdk . function . CurriedFunction , snuba_sdk . function . Function ]] ) -> snuba_sdk . query . Query : ", "funcdef": "def"}, "snuba_sdk.Query.set_groupby": {"fullname": "snuba_sdk.Query.set_groupby", "modulename": "snuba_sdk", "qualname": "Query.set_groupby", "kind": "function", "doc": "
\n", "signature": "(\tself , \tgroupby : Sequence [ Union [ snuba_sdk . aliased_expression . AliasedExpression , snuba_sdk . column . Column , snuba_sdk . function . CurriedFunction , snuba_sdk . function . Function ]] ) -> snuba_sdk . query . Query : ", "funcdef": "def"}, "snuba_sdk.Query.set_array_join": {"fullname": "snuba_sdk.Query.set_array_join", "modulename": "snuba_sdk", "qualname": "Query.set_array_join", "kind": "function", "doc": "
\n", "signature": "(\tself , \tarray_join : Sequence [ snuba_sdk . column . Column ] ) -> snuba_sdk . query . Query : ", "funcdef": "def"}, "snuba_sdk.Query.set_where": {"fullname": "snuba_sdk.Query.set_where", "modulename": "snuba_sdk", "qualname": "Query.set_where", "kind": "function", "doc": "
\n", "signature": "(\tself , \tconditions : Sequence [ Union [ snuba_sdk . conditions . BooleanCondition , snuba_sdk . conditions . Condition ]] ) -> snuba_sdk . query . Query : ", "funcdef": "def"}, "snuba_sdk.Query.set_having": {"fullname": "snuba_sdk.Query.set_having", "modulename": "snuba_sdk", "qualname": "Query.set_having", "kind": "function", "doc": "
\n", "signature": "(\tself , \tconditions : Sequence [ Union [ snuba_sdk . conditions . BooleanCondition , snuba_sdk . conditions . Condition ]] ) -> snuba_sdk . query . Query : ", "funcdef": "def"}, "snuba_sdk.Query.set_orderby": {"fullname": "snuba_sdk.Query.set_orderby", "modulename": "snuba_sdk", "qualname": "Query.set_orderby", "kind": "function", "doc": "
\n", "signature": "(\tself , \torderby : Sequence [ snuba_sdk . orderby . OrderBy ] ) -> snuba_sdk . query . Query : ", "funcdef": "def"}, "snuba_sdk.Query.set_limitby": {"fullname": "snuba_sdk.Query.set_limitby", "modulename": "snuba_sdk", "qualname": "Query.set_limitby", "kind": "function", "doc": "
\n", "signature": "(self , limitby : snuba_sdk . orderby . LimitBy ) -> snuba_sdk . query . Query : ", "funcdef": "def"}, "snuba_sdk.Query.set_limit": {"fullname": "snuba_sdk.Query.set_limit", "modulename": "snuba_sdk", "qualname": "Query.set_limit", "kind": "function", "doc": "
\n", "signature": "(self , limit : int ) -> snuba_sdk . query . Query : ", "funcdef": "def"}, "snuba_sdk.Query.set_offset": {"fullname": "snuba_sdk.Query.set_offset", "modulename": "snuba_sdk", "qualname": "Query.set_offset", "kind": "function", "doc": "
\n", "signature": "(self , offset : int ) -> snuba_sdk . query . Query : ", "funcdef": "def"}, "snuba_sdk.Query.set_granularity": {"fullname": "snuba_sdk.Query.set_granularity", "modulename": "snuba_sdk", "qualname": "Query.set_granularity", "kind": "function", "doc": "
\n", "signature": "(self , granularity : int ) -> snuba_sdk . query . Query : ", "funcdef": "def"}, "snuba_sdk.Query.set_totals": {"fullname": "snuba_sdk.Query.set_totals", "modulename": "snuba_sdk", "qualname": "Query.set_totals", "kind": "function", "doc": "
\n", "signature": "(self , totals : bool ) -> snuba_sdk . query . Query : ", "funcdef": "def"}, "snuba_sdk.Query.validate": {"fullname": "snuba_sdk.Query.validate", "modulename": "snuba_sdk", "qualname": "Query.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.Query.serialize": {"fullname": "snuba_sdk.Query.serialize", "modulename": "snuba_sdk", "qualname": "Query.serialize", "kind": "function", "doc": "
\n", "signature": "(self ) -> str : ", "funcdef": "def"}, "snuba_sdk.Query.print": {"fullname": "snuba_sdk.Query.print", "modulename": "snuba_sdk", "qualname": "Query.print", "kind": "function", "doc": "
\n", "signature": "(self ) -> str : ", "funcdef": "def"}, "snuba_sdk.Relationship": {"fullname": "snuba_sdk.Relationship", "modulename": "snuba_sdk", "qualname": "Relationship", "kind": "class", "doc": "A representation of a relationship between two Entities. The relationship\nname should be defined in the data model of the LHS and entity in Snuba.\nBoth Entities must have a valid alias, which will be used to qualify the\ncolumns in the SnQL query.
\n\nParameters \n\n\nlhs : The Entity that owns the relationship. \nname : The name of the relationship on the LHS Entity. \nrhs : The Entity connected to the LHS using the relationship. \n \n\nRaises \n\n\nInvalidExpressionError : If the incorrect types are used or if either\nof the Entities does not have an alias. \n \n", "bases": "snuba_sdk.expressions.Expression"}, "snuba_sdk.Relationship.__init__": {"fullname": "snuba_sdk.Relationship.__init__", "modulename": "snuba_sdk", "qualname": "Relationship.__init__", "kind": "function", "doc": "
\n", "signature": "(\tlhs : snuba_sdk . entity . Entity , \tname : str , \trhs : snuba_sdk . entity . Entity ) "}, "snuba_sdk.Relationship.lhs": {"fullname": "snuba_sdk.Relationship.lhs", "modulename": "snuba_sdk", "qualname": "Relationship.lhs", "kind": "variable", "doc": "
\n", "annotation": ": snuba_sdk.entity.Entity"}, "snuba_sdk.Relationship.name": {"fullname": "snuba_sdk.Relationship.name", "modulename": "snuba_sdk", "qualname": "Relationship.name", "kind": "variable", "doc": "
\n", "annotation": ": str"}, "snuba_sdk.Relationship.rhs": {"fullname": "snuba_sdk.Relationship.rhs", "modulename": "snuba_sdk", "qualname": "Relationship.rhs", "kind": "variable", "doc": "
\n", "annotation": ": snuba_sdk.entity.Entity"}, "snuba_sdk.Relationship.validate": {"fullname": "snuba_sdk.Relationship.validate", "modulename": "snuba_sdk", "qualname": "Relationship.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.Request": {"fullname": "snuba_sdk.Request", "modulename": "snuba_sdk", "qualname": "Request", "kind": "class", "doc": "
\n"}, "snuba_sdk.Request.__init__": {"fullname": "snuba_sdk.Request.__init__", "modulename": "snuba_sdk", "qualname": "Request.__init__", "kind": "function", "doc": "
\n", "signature": "(\tdataset : str , \tapp_id : str , \tquery : snuba_sdk . query . BaseQuery , \tflags : snuba_sdk . request . Flags = < factory > , \tparent_api : str = '<unknown>' , \ttenant_ids : 'dict[str, str | int]' = < factory > ) "}, "snuba_sdk.Request.dataset": {"fullname": "snuba_sdk.Request.dataset", "modulename": "snuba_sdk", "qualname": "Request.dataset", "kind": "variable", "doc": "
\n", "annotation": ": str"}, "snuba_sdk.Request.app_id": {"fullname": "snuba_sdk.Request.app_id", "modulename": "snuba_sdk", "qualname": "Request.app_id", "kind": "variable", "doc": "
\n", "annotation": ": str"}, "snuba_sdk.Request.query": {"fullname": "snuba_sdk.Request.query", "modulename": "snuba_sdk", "qualname": "Request.query", "kind": "variable", "doc": "
\n", "annotation": ": snuba_sdk.query.BaseQuery"}, "snuba_sdk.Request.flags": {"fullname": "snuba_sdk.Request.flags", "modulename": "snuba_sdk", "qualname": "Request.flags", "kind": "variable", "doc": "
\n", "annotation": ": snuba_sdk.request.Flags"}, "snuba_sdk.Request.parent_api": {"fullname": "snuba_sdk.Request.parent_api", "modulename": "snuba_sdk", "qualname": "Request.parent_api", "kind": "variable", "doc": "
\n", "annotation": ": str", "default_value": "'<unknown>'"}, "snuba_sdk.Request.tenant_ids": {"fullname": "snuba_sdk.Request.tenant_ids", "modulename": "snuba_sdk", "qualname": "Request.tenant_ids", "kind": "variable", "doc": "
\n", "annotation": ": 'dict[str, str | int]'"}, "snuba_sdk.Request.validate": {"fullname": "snuba_sdk.Request.validate", "modulename": "snuba_sdk", "qualname": "Request.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.Request.to_dict": {"fullname": "snuba_sdk.Request.to_dict", "modulename": "snuba_sdk", "qualname": "Request.to_dict", "kind": "function", "doc": "
\n", "signature": "(self , mql : bool = False ) -> 'dict[str, bool | str | dict[str, Any]]' : ", "funcdef": "def"}, "snuba_sdk.Request.serialize": {"fullname": "snuba_sdk.Request.serialize", "modulename": "snuba_sdk", "qualname": "Request.serialize", "kind": "function", "doc": "
\n", "signature": "(self ) -> str : ", "funcdef": "def"}, "snuba_sdk.Request.serialize_mql": {"fullname": "snuba_sdk.Request.serialize_mql", "modulename": "snuba_sdk", "qualname": "Request.serialize_mql", "kind": "function", "doc": "
\n", "signature": "(self ) -> str : ", "funcdef": "def"}, "snuba_sdk.Request.print": {"fullname": "snuba_sdk.Request.print", "modulename": "snuba_sdk", "qualname": "Request.print", "kind": "function", "doc": "
\n", "signature": "(self , mql : bool = False ) -> str : ", "funcdef": "def"}, "snuba_sdk.Rollup": {"fullname": "snuba_sdk.Rollup", "modulename": "snuba_sdk", "qualname": "Rollup", "kind": "class", "doc": "Rollup instructs how the timeseries queries should be grouped on time. If the query is for a set of timeseries, then\nthe interval field should be specified. It is the number of seconds to group the timeseries by.\nFor a query that returns only the totals, specify Totals(True). A totals query can be ordered using the orderby field.\nIf totals is set to True and the interval is specified, then an extra row will be returned in the result with the totals\nfor the timeseries.
\n"}, "snuba_sdk.Rollup.__init__": {"fullname": "snuba_sdk.Rollup.__init__", "modulename": "snuba_sdk", "qualname": "Rollup.__init__", "kind": "function", "doc": "
\n", "signature": "(\tinterval : 'int | None' = None , \ttotals : 'bool | None' = None , \torderby : 'Direction | None' = None , \tgranularity : 'int | None' = None ) "}, "snuba_sdk.Rollup.interval": {"fullname": "snuba_sdk.Rollup.interval", "modulename": "snuba_sdk", "qualname": "Rollup.interval", "kind": "variable", "doc": "
\n", "annotation": ": 'int | None'", "default_value": "None"}, "snuba_sdk.Rollup.totals": {"fullname": "snuba_sdk.Rollup.totals", "modulename": "snuba_sdk", "qualname": "Rollup.totals", "kind": "variable", "doc": "
\n", "annotation": ": 'bool | None'", "default_value": "None"}, "snuba_sdk.Rollup.orderby": {"fullname": "snuba_sdk.Rollup.orderby", "modulename": "snuba_sdk", "qualname": "Rollup.orderby", "kind": "variable", "doc": "
\n", "annotation": ": 'Direction | None'", "default_value": "None"}, "snuba_sdk.Rollup.granularity": {"fullname": "snuba_sdk.Rollup.granularity", "modulename": "snuba_sdk", "qualname": "Rollup.granularity", "kind": "variable", "doc": "
\n", "annotation": ": 'int | None'", "default_value": "None"}, "snuba_sdk.Rollup.validate": {"fullname": "snuba_sdk.Rollup.validate", "modulename": "snuba_sdk", "qualname": "Rollup.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.Timeseries": {"fullname": "snuba_sdk.Timeseries", "modulename": "snuba_sdk", "qualname": "Timeseries", "kind": "class", "doc": "A code representation of a single timeseries. This is the basic unit of a metrics query.\nA raw metric, aggregated by an aggregate function. It can be filtered by tag conditions.\nIt can also grouped by a set of tag values, which will return one timeseries for each unique\ngrouping of tag values.
\n"}, "snuba_sdk.Timeseries.__init__": {"fullname": "snuba_sdk.Timeseries.__init__", "modulename": "snuba_sdk", "qualname": "Timeseries.__init__", "kind": "function", "doc": "
\n", "signature": "(\tmetric : snuba_sdk . timeseries . Metric , \taggregate : str , \taggregate_params : 'list[Any] | None' = None , \tfilters : 'ConditionGroup | None' = None , \tgroupby : 'list[Column | AliasedExpression] | None' = None ) "}, "snuba_sdk.Timeseries.metric": {"fullname": "snuba_sdk.Timeseries.metric", "modulename": "snuba_sdk", "qualname": "Timeseries.metric", "kind": "variable", "doc": "
\n", "annotation": ": snuba_sdk.timeseries.Metric"}, "snuba_sdk.Timeseries.aggregate": {"fullname": "snuba_sdk.Timeseries.aggregate", "modulename": "snuba_sdk", "qualname": "Timeseries.aggregate", "kind": "variable", "doc": "
\n", "annotation": ": str"}, "snuba_sdk.Timeseries.aggregate_params": {"fullname": "snuba_sdk.Timeseries.aggregate_params", "modulename": "snuba_sdk", "qualname": "Timeseries.aggregate_params", "kind": "variable", "doc": "
\n", "annotation": ": 'list[Any] | None'", "default_value": "None"}, "snuba_sdk.Timeseries.filters": {"fullname": "snuba_sdk.Timeseries.filters", "modulename": "snuba_sdk", "qualname": "Timeseries.filters", "kind": "variable", "doc": "
\n", "annotation": ": 'ConditionGroup | None'", "default_value": "None"}, "snuba_sdk.Timeseries.groupby": {"fullname": "snuba_sdk.Timeseries.groupby", "modulename": "snuba_sdk", "qualname": "Timeseries.groupby", "kind": "variable", "doc": "
\n", "annotation": ": 'list[Column | AliasedExpression] | None'", "default_value": "None"}, "snuba_sdk.Timeseries.get_fields": {"fullname": "snuba_sdk.Timeseries.get_fields", "modulename": "snuba_sdk", "qualname": "Timeseries.get_fields", "kind": "function", "doc": "
\n", "signature": "(self ) -> Sequence [ str ] : ", "funcdef": "def"}, "snuba_sdk.Timeseries.validate": {"fullname": "snuba_sdk.Timeseries.validate", "modulename": "snuba_sdk", "qualname": "Timeseries.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}, "snuba_sdk.Timeseries.set_metric": {"fullname": "snuba_sdk.Timeseries.set_metric", "modulename": "snuba_sdk", "qualname": "Timeseries.set_metric", "kind": "function", "doc": "
\n", "signature": "(\tself , \tmetric : snuba_sdk . timeseries . Metric ) -> snuba_sdk . timeseries . Timeseries : ", "funcdef": "def"}, "snuba_sdk.Timeseries.set_aggregate": {"fullname": "snuba_sdk.Timeseries.set_aggregate", "modulename": "snuba_sdk", "qualname": "Timeseries.set_aggregate", "kind": "function", "doc": "
\n", "signature": "(\tself , \taggregate : str , \taggregate_params : 'list[Any] | None' = None ) -> snuba_sdk . timeseries . Timeseries : ", "funcdef": "def"}, "snuba_sdk.Timeseries.set_filters": {"fullname": "snuba_sdk.Timeseries.set_filters", "modulename": "snuba_sdk", "qualname": "Timeseries.set_filters", "kind": "function", "doc": "
\n", "signature": "(\tself , \tfilters : 'ConditionGroup | None' ) -> snuba_sdk . timeseries . Timeseries : ", "funcdef": "def"}, "snuba_sdk.Timeseries.set_groupby": {"fullname": "snuba_sdk.Timeseries.set_groupby", "modulename": "snuba_sdk", "qualname": "Timeseries.set_groupby", "kind": "function", "doc": "
\n", "signature": "(\tself , \tgroupby : 'list[Column | AliasedExpression] | None' ) -> snuba_sdk . timeseries . Timeseries : ", "funcdef": "def"}, "snuba_sdk.Totals": {"fullname": "snuba_sdk.Totals", "modulename": "snuba_sdk", "qualname": "Totals", "kind": "class", "doc": "
\n", "bases": "snuba_sdk.expressions.Expression"}, "snuba_sdk.Totals.__init__": {"fullname": "snuba_sdk.Totals.__init__", "modulename": "snuba_sdk", "qualname": "Totals.__init__", "kind": "function", "doc": "
\n", "signature": "(totals : bool ) "}, "snuba_sdk.Totals.totals": {"fullname": "snuba_sdk.Totals.totals", "modulename": "snuba_sdk", "qualname": "Totals.totals", "kind": "variable", "doc": "
\n", "annotation": ": bool"}, "snuba_sdk.Totals.validate": {"fullname": "snuba_sdk.Totals.validate", "modulename": "snuba_sdk", "qualname": "Totals.validate", "kind": "function", "doc": "
\n", "signature": "(self ) -> None : ", "funcdef": "def"}}, "docInfo": {"snuba_sdk": {"qualname": 0, "fullname": 2, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 1283}, "snuba_sdk.AliasedExpression": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 90}, "snuba_sdk.AliasedExpression.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 54, "bases": 0, "doc": 3}, "snuba_sdk.AliasedExpression.exp": {"qualname": 2, "fullname": 4, "annotation": 5, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.AliasedExpression.alias": {"qualname": 2, "fullname": 4, "annotation": 3, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.AliasedExpression.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.And": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 3}, "snuba_sdk.And.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 68, "bases": 0, "doc": 3}, "snuba_sdk.And.op": {"qualname": 2, "fullname": 4, "annotation": 5, "default_value": 9, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.And.conditions": {"qualname": 2, "fullname": 4, "annotation": 9, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.ArithmeticOperator": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 2, "doc": 5}, "snuba_sdk.ArithmeticOperator.PLUS": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 9, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.ArithmeticOperator.MINUS": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 9, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.ArithmeticOperator.MULTIPLY": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 9, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.ArithmeticOperator.DIVIDE": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 9, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.BooleanCondition": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 3}, "snuba_sdk.BooleanCondition.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 75, "bases": 0, "doc": 3}, "snuba_sdk.BooleanCondition.op": {"qualname": 2, "fullname": 4, "annotation": 5, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.BooleanCondition.conditions": {"qualname": 2, "fullname": 4, "annotation": 9, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.BooleanCondition.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.BooleanOp": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 2, "doc": 5}, "snuba_sdk.BooleanOp.AND": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 9, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.BooleanOp.OR": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 9, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Column": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 110}, "snuba_sdk.Column.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 54, "bases": 0, "doc": 3}, "snuba_sdk.Column.name": {"qualname": 2, "fullname": 4, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Column.entity": {"qualname": 2, "fullname": 4, "annotation": 6, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Column.subscriptable": {"qualname": 2, "fullname": 4, "annotation": 3, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Column.key": {"qualname": 2, "fullname": 4, "annotation": 3, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Column.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Column.validate_data_model": {"qualname": 4, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 35, "bases": 0, "doc": 3}, "snuba_sdk.Condition": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 3}, "snuba_sdk.Condition.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 298, "bases": 0, "doc": 3}, "snuba_sdk.Condition.lhs": {"qualname": 2, "fullname": 4, "annotation": 13, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Condition.op": {"qualname": 2, "fullname": 4, "annotation": 5, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Condition.rhs": {"qualname": 2, "fullname": 4, "annotation": 37, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Condition.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.CurriedFunction": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 3}, "snuba_sdk.CurriedFunction.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 410, "bases": 0, "doc": 3}, "snuba_sdk.CurriedFunction.function": {"qualname": 2, "fullname": 4, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.CurriedFunction.initializers": {"qualname": 2, "fullname": 4, "annotation": 16, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.CurriedFunction.parameters": {"qualname": 2, "fullname": 4, "annotation": 46, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.CurriedFunction.alias": {"qualname": 2, "fullname": 4, "annotation": 3, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.CurriedFunction.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Direction": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 2, "doc": 5}, "snuba_sdk.Direction.ASC": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 9, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Direction.DESC": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 9, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Entity": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 3}, "snuba_sdk.Entity.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 117, "bases": 0, "doc": 3}, "snuba_sdk.Entity.name": {"qualname": 2, "fullname": 4, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Entity.alias": {"qualname": 2, "fullname": 4, "annotation": 3, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Entity.sample": {"qualname": 2, "fullname": 4, "annotation": 3, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Entity.data_model": {"qualname": 3, "fullname": 5, "annotation": 6, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Entity.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Flags": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Flags.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 149, "bases": 0, "doc": 3}, "snuba_sdk.Flags.totals": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Flags.consistent": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Flags.turbo": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Flags.debug": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Flags.dry_run": {"qualname": 3, "fullname": 5, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Flags.legacy": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Flags.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Flags.to_dict": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 19, "bases": 0, "doc": 3}, "snuba_sdk.Formula": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Formula.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 190, "bases": 0, "doc": 3}, "snuba_sdk.Formula.function_name": {"qualname": 3, "fullname": 5, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Formula.parameters": {"qualname": 2, "fullname": 4, "annotation": 13, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Formula.filters": {"qualname": 2, "fullname": 4, "annotation": 10, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Formula.groupby": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Formula.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Formula.set_parameters": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 93, "bases": 0, "doc": 3}, "snuba_sdk.Formula.set_filters": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 41, "bases": 0, "doc": 3}, "snuba_sdk.Formula.set_groupby": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 45, "bases": 0, "doc": 3}, "snuba_sdk.Function": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 3}, "snuba_sdk.Function.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 303, "bases": 0, "doc": 3}, "snuba_sdk.Function.initializers": {"qualname": 2, "fullname": 4, "annotation": 16, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Granularity": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 3}, "snuba_sdk.Granularity.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Granularity.granularity": {"qualname": 2, "fullname": 4, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Granularity.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Identifier": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 3}, "snuba_sdk.Identifier.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Identifier.name": {"qualname": 2, "fullname": 4, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Identifier.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Join": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 81}, "snuba_sdk.Join.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 31, "bases": 0, "doc": 3}, "snuba_sdk.Join.relationships": {"qualname": 2, "fullname": 4, "annotation": 5, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Join.get_alias_mappings": {"qualname": 4, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 19, "bases": 0, "doc": 3}, "snuba_sdk.Join.get_entities": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 18, "bases": 0, "doc": 3}, "snuba_sdk.Join.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Lambda": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 3}, "snuba_sdk.Lambda.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 43, "bases": 0, "doc": 3}, "snuba_sdk.Lambda.identifiers": {"qualname": 2, "fullname": 4, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Lambda.transformation": {"qualname": 2, "fullname": 4, "annotation": 5, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Lambda.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Limit": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 3}, "snuba_sdk.Limit.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Limit.limit": {"qualname": 2, "fullname": 4, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Limit.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.LimitBy": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 3}, "snuba_sdk.LimitBy.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 41, "bases": 0, "doc": 3}, "snuba_sdk.LimitBy.columns": {"qualname": 2, "fullname": 4, "annotation": 5, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.LimitBy.count": {"qualname": 2, "fullname": 4, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.LimitBy.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Metric": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 25}, "snuba_sdk.Metric.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 101, "bases": 0, "doc": 3}, "snuba_sdk.Metric.public_name": {"qualname": 3, "fullname": 5, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Metric.mri": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Metric.id": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Metric.entity": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Metric.get_fields": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 20, "bases": 0, "doc": 3}, "snuba_sdk.Metric.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Metric.set_mri": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 35, "bases": 0, "doc": 3}, "snuba_sdk.Metric.set_public_name": {"qualname": 4, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 36, "bases": 0, "doc": 3}, "snuba_sdk.Metric.set_id": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 35, "bases": 0, "doc": 3}, "snuba_sdk.Metric.set_entity": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 35, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 113}, "snuba_sdk.MetricsQuery.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 202, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.query": {"qualname": 2, "fullname": 4, "annotation": 9, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.start": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.end": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.rollup": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.scope": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.limit": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.offset": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.indexer_mappings": {"qualname": 3, "fullname": 5, "annotation": 10, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.set_query": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 44, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.set_start": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 41, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.set_end": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 41, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.set_rollup": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 49, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.set_scope": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 49, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.set_limit": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 36, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.set_offset": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 36, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"qualname": 4, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 46, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.serialize": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.print": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.MetricsQuery.serialize_to_mql": {"qualname": 4, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 22, "bases": 0, "doc": 3}, "snuba_sdk.MetricsScope": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 77}, "snuba_sdk.MetricsScope.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 62, "bases": 0, "doc": 3}, "snuba_sdk.MetricsScope.org_ids": {"qualname": 3, "fullname": 5, "annotation": 5, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.MetricsScope.project_ids": {"qualname": 3, "fullname": 5, "annotation": 5, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.MetricsScope.use_case_id": {"qualname": 4, "fullname": 6, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.MetricsScope.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.MetricsScope.set_use_case_id": {"qualname": 5, "fullname": 7, "annotation": 0, "default_value": 0, "signature": 37, "bases": 0, "doc": 3}, "snuba_sdk.MQLContext": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Offset": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 3}, "snuba_sdk.Offset.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Offset.offset": {"qualname": 2, "fullname": 4, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Offset.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Op": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 2, "doc": 5}, "snuba_sdk.Op.GT": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 9, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Op.LT": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 9, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Op.GTE": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 9, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Op.LTE": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 9, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Op.EQ": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 8, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Op.NEQ": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 9, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Op.IN": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 9, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Op.NOT_IN": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 11, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Op.LIKE": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 9, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Op.NOT_LIKE": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 11, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Op.IS_NULL": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 11, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Op.IS_NOT_NULL": {"qualname": 4, "fullname": 6, "annotation": 0, "default_value": 13, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Op.NOT": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 9, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Or": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 3}, "snuba_sdk.Or.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 68, "bases": 0, "doc": 3}, "snuba_sdk.Or.op": {"qualname": 2, "fullname": 4, "annotation": 5, "default_value": 9, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Or.conditions": {"qualname": 2, "fullname": 4, "annotation": 9, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.OrderBy": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 3}, "snuba_sdk.OrderBy.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 88, "bases": 0, "doc": 3}, "snuba_sdk.OrderBy.exp": {"qualname": 2, "fullname": 4, "annotation": 13, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.OrderBy.direction": {"qualname": 2, "fullname": 4, "annotation": 5, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.OrderBy.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Query": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 58}, "snuba_sdk.Query.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 696, "bases": 0, "doc": 3}, "snuba_sdk.Query.match": {"qualname": 2, "fullname": 4, "annotation": 13, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Query.select": {"qualname": 2, "fullname": 4, "annotation": 19, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Query.groupby": {"qualname": 2, "fullname": 4, "annotation": 19, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Query.array_join": {"qualname": 3, "fullname": 5, "annotation": 6, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Query.where": {"qualname": 2, "fullname": 4, "annotation": 10, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Query.having": {"qualname": 2, "fullname": 4, "annotation": 10, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Query.orderby": {"qualname": 2, "fullname": 4, "annotation": 6, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Query.limitby": {"qualname": 2, "fullname": 4, "annotation": 6, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Query.limit": {"qualname": 2, "fullname": 4, "annotation": 6, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Query.offset": {"qualname": 2, "fullname": 4, "annotation": 6, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Query.granularity": {"qualname": 2, "fullname": 4, "annotation": 6, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Query.totals": {"qualname": 2, "fullname": 4, "annotation": 6, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Query.set_match": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 88, "bases": 0, "doc": 3}, "snuba_sdk.Query.set_select": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 110, "bases": 0, "doc": 3}, "snuba_sdk.Query.set_groupby": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 110, "bases": 0, "doc": 3}, "snuba_sdk.Query.set_array_join": {"qualname": 4, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 55, "bases": 0, "doc": 3}, "snuba_sdk.Query.set_where": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 75, "bases": 0, "doc": 3}, "snuba_sdk.Query.set_having": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 75, "bases": 0, "doc": 3}, "snuba_sdk.Query.set_orderby": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 54, "bases": 0, "doc": 3}, "snuba_sdk.Query.set_limitby": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 46, "bases": 0, "doc": 3}, "snuba_sdk.Query.set_limit": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 35, "bases": 0, "doc": 3}, "snuba_sdk.Query.set_offset": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 35, "bases": 0, "doc": 3}, "snuba_sdk.Query.set_granularity": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 35, "bases": 0, "doc": 3}, "snuba_sdk.Query.set_totals": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 35, "bases": 0, "doc": 3}, "snuba_sdk.Query.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Query.serialize": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Query.print": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Relationship": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 126}, "snuba_sdk.Relationship.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 59, "bases": 0, "doc": 3}, "snuba_sdk.Relationship.lhs": {"qualname": 2, "fullname": 4, "annotation": 5, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Relationship.name": {"qualname": 2, "fullname": 4, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Relationship.rhs": {"qualname": 2, "fullname": 4, "annotation": 5, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Relationship.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Request": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Request.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 145, "bases": 0, "doc": 3}, "snuba_sdk.Request.dataset": {"qualname": 2, "fullname": 4, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Request.app_id": {"qualname": 3, "fullname": 5, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Request.query": {"qualname": 2, "fullname": 4, "annotation": 5, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Request.flags": {"qualname": 2, "fullname": 4, "annotation": 5, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Request.parent_api": {"qualname": 3, "fullname": 5, "annotation": 2, "default_value": 7, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Request.tenant_ids": {"qualname": 3, "fullname": 5, "annotation": 8, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Request.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Request.to_dict": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 41, "bases": 0, "doc": 3}, "snuba_sdk.Request.serialize": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Request.serialize_mql": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Request.print": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 31, "bases": 0, "doc": 3}, "snuba_sdk.Rollup": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 89}, "snuba_sdk.Rollup.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 100, "bases": 0, "doc": 3}, "snuba_sdk.Rollup.interval": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Rollup.totals": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Rollup.orderby": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Rollup.granularity": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Rollup.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Timeseries": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 56}, "snuba_sdk.Timeseries.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 112, "bases": 0, "doc": 3}, "snuba_sdk.Timeseries.metric": {"qualname": 2, "fullname": 4, "annotation": 5, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Timeseries.aggregate": {"qualname": 2, "fullname": 4, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Timeseries.aggregate_params": {"qualname": 3, "fullname": 5, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Timeseries.filters": {"qualname": 2, "fullname": 4, "annotation": 7, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Timeseries.groupby": {"qualname": 2, "fullname": 4, "annotation": 9, "default_value": 1, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Timeseries.get_fields": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 20, "bases": 0, "doc": 3}, "snuba_sdk.Timeseries.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Timeseries.set_metric": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 48, "bases": 0, "doc": 3}, "snuba_sdk.Timeseries.set_aggregate": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 62, "bases": 0, "doc": 3}, "snuba_sdk.Timeseries.set_filters": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 43, "bases": 0, "doc": 3}, "snuba_sdk.Timeseries.set_groupby": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 45, "bases": 0, "doc": 3}, "snuba_sdk.Totals": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 3}, "snuba_sdk.Totals.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}, "snuba_sdk.Totals.totals": {"qualname": 2, "fullname": 4, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "snuba_sdk.Totals.validate": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 3}}, "length": 246, "save": true}, "index": {"qualname": {"root": {"docs": {"snuba_sdk.AliasedExpression.__init__": {"tf": 1}, "snuba_sdk.And.__init__": {"tf": 1}, "snuba_sdk.BooleanCondition.__init__": {"tf": 1}, "snuba_sdk.Column.__init__": {"tf": 1}, "snuba_sdk.Condition.__init__": {"tf": 1}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1}, "snuba_sdk.Entity.__init__": {"tf": 1}, "snuba_sdk.Flags.__init__": {"tf": 1}, "snuba_sdk.Formula.__init__": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1}, "snuba_sdk.Granularity.__init__": {"tf": 1}, "snuba_sdk.Identifier.__init__": {"tf": 1}, "snuba_sdk.Join.__init__": {"tf": 1}, "snuba_sdk.Lambda.__init__": {"tf": 1}, "snuba_sdk.Limit.__init__": {"tf": 1}, "snuba_sdk.LimitBy.__init__": {"tf": 1}, "snuba_sdk.Metric.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsScope.__init__": {"tf": 1}, "snuba_sdk.Offset.__init__": {"tf": 1}, "snuba_sdk.Or.__init__": {"tf": 1}, "snuba_sdk.OrderBy.__init__": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1}, "snuba_sdk.Relationship.__init__": {"tf": 1}, "snuba_sdk.Request.__init__": {"tf": 1}, "snuba_sdk.Rollup.__init__": {"tf": 1}, "snuba_sdk.Timeseries.__init__": {"tf": 1}, "snuba_sdk.Totals.__init__": {"tf": 1}}, "df": 28, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.AliasedExpression.alias": {"tf": 1}, "snuba_sdk.CurriedFunction.alias": {"tf": 1}, "snuba_sdk.Entity.alias": {"tf": 1}, "snuba_sdk.Join.get_alias_mappings": {"tf": 1}}, "df": 4, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.AliasedExpression.__init__": {"tf": 1}, "snuba_sdk.AliasedExpression.exp": {"tf": 1}, "snuba_sdk.AliasedExpression.alias": {"tf": 1}, "snuba_sdk.AliasedExpression.validate": {"tf": 1}}, "df": 5}}}}}}}}}}}}}}}}, "n": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.And": {"tf": 1}, "snuba_sdk.And.__init__": {"tf": 1}, "snuba_sdk.And.op": {"tf": 1}, "snuba_sdk.And.conditions": {"tf": 1}, "snuba_sdk.BooleanOp.AND": {"tf": 1}}, "df": 5}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.ArithmeticOperator": {"tf": 1}, "snuba_sdk.ArithmeticOperator.PLUS": {"tf": 1}, "snuba_sdk.ArithmeticOperator.MINUS": {"tf": 1}, "snuba_sdk.ArithmeticOperator.MULTIPLY": {"tf": 1}, "snuba_sdk.ArithmeticOperator.DIVIDE": {"tf": 1}}, "df": 5}}}}}}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Query.array_join": {"tf": 1}, "snuba_sdk.Query.set_array_join": {"tf": 1}}, "df": 2}}}}, "s": {"docs": {}, "df": 0, "c": {"docs": {"snuba_sdk.Direction.ASC": {"tf": 1}}, "df": 1}}, "p": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.Request.app_id": {"tf": 1}}, "df": 1}, "i": {"docs": {"snuba_sdk.Request.parent_api": {"tf": 1}}, "df": 1}}, "g": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Timeseries.aggregate": {"tf": 1}, "snuba_sdk.Timeseries.aggregate_params": {"tf": 1}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 1}}, "df": 3}}}}}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Op.IN": {"tf": 1}, "snuba_sdk.Op.NOT_IN": {"tf": 1}}, "df": 2, "i": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.AliasedExpression.__init__": {"tf": 1}, "snuba_sdk.And.__init__": {"tf": 1}, "snuba_sdk.BooleanCondition.__init__": {"tf": 1}, "snuba_sdk.Column.__init__": {"tf": 1}, "snuba_sdk.Condition.__init__": {"tf": 1}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1}, "snuba_sdk.Entity.__init__": {"tf": 1}, "snuba_sdk.Flags.__init__": {"tf": 1}, "snuba_sdk.Formula.__init__": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1}, "snuba_sdk.Granularity.__init__": {"tf": 1}, "snuba_sdk.Identifier.__init__": {"tf": 1}, "snuba_sdk.Join.__init__": {"tf": 1}, "snuba_sdk.Lambda.__init__": {"tf": 1}, "snuba_sdk.Limit.__init__": {"tf": 1}, "snuba_sdk.LimitBy.__init__": {"tf": 1}, "snuba_sdk.Metric.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsScope.__init__": {"tf": 1}, "snuba_sdk.Offset.__init__": {"tf": 1}, "snuba_sdk.Or.__init__": {"tf": 1}, "snuba_sdk.OrderBy.__init__": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1}, "snuba_sdk.Relationship.__init__": {"tf": 1}, "snuba_sdk.Request.__init__": {"tf": 1}, "snuba_sdk.Rollup.__init__": {"tf": 1}, "snuba_sdk.Timeseries.__init__": {"tf": 1}, "snuba_sdk.Totals.__init__": {"tf": 1}}, "df": 28, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.CurriedFunction.initializers": {"tf": 1}, "snuba_sdk.Function.initializers": {"tf": 1}}, "df": 2}}}}}}}}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.MetricsQuery.indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}}, "df": 2}}}}}, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.Rollup.interval": {"tf": 1}}, "df": 1}}}}}}}, "d": {"docs": {"snuba_sdk.Metric.id": {"tf": 1}, "snuba_sdk.Metric.set_id": {"tf": 1}, "snuba_sdk.MetricsScope.use_case_id": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}, "snuba_sdk.Request.app_id": {"tf": 1}}, "df": 5, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.Identifier": {"tf": 1}, "snuba_sdk.Identifier.__init__": {"tf": 1}, "snuba_sdk.Identifier.name": {"tf": 1}, "snuba_sdk.Identifier.validate": {"tf": 1}}, "df": 4, "s": {"docs": {"snuba_sdk.Lambda.identifiers": {"tf": 1}}, "df": 1}}}}}}}}}, "s": {"docs": {"snuba_sdk.MetricsScope.org_ids": {"tf": 1}, "snuba_sdk.MetricsScope.project_ids": {"tf": 1}, "snuba_sdk.Request.tenant_ids": {"tf": 1}}, "df": 3}}, "s": {"docs": {"snuba_sdk.Op.IS_NULL": {"tf": 1}, "snuba_sdk.Op.IS_NOT_NULL": {"tf": 1}}, "df": 2}}, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.AliasedExpression.exp": {"tf": 1}, "snuba_sdk.OrderBy.exp": {"tf": 1}}, "df": 2}}, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Column.entity": {"tf": 1}, "snuba_sdk.Entity": {"tf": 1}, "snuba_sdk.Entity.__init__": {"tf": 1}, "snuba_sdk.Entity.name": {"tf": 1}, "snuba_sdk.Entity.alias": {"tf": 1}, "snuba_sdk.Entity.sample": {"tf": 1}, "snuba_sdk.Entity.data_model": {"tf": 1}, "snuba_sdk.Entity.validate": {"tf": 1}, "snuba_sdk.Metric.entity": {"tf": 1}, "snuba_sdk.Metric.set_entity": {"tf": 1}}, "df": 10}, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Join.get_entities": {"tf": 1}}, "df": 1}}}}}}, "d": {"docs": {"snuba_sdk.MetricsQuery.end": {"tf": 1}, "snuba_sdk.MetricsQuery.set_end": {"tf": 1}}, "df": 2}}, "q": {"docs": {"snuba_sdk.Op.EQ": {"tf": 1}}, "df": 1}}, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.AliasedExpression.validate": {"tf": 1}, "snuba_sdk.BooleanCondition.validate": {"tf": 1}, "snuba_sdk.Column.validate": {"tf": 1}, "snuba_sdk.Column.validate_data_model": {"tf": 1}, "snuba_sdk.Condition.validate": {"tf": 1}, "snuba_sdk.CurriedFunction.validate": {"tf": 1}, "snuba_sdk.Entity.validate": {"tf": 1}, "snuba_sdk.Flags.validate": {"tf": 1}, "snuba_sdk.Formula.validate": {"tf": 1}, "snuba_sdk.Granularity.validate": {"tf": 1}, "snuba_sdk.Identifier.validate": {"tf": 1}, "snuba_sdk.Join.validate": {"tf": 1}, "snuba_sdk.Lambda.validate": {"tf": 1}, "snuba_sdk.Limit.validate": {"tf": 1}, "snuba_sdk.LimitBy.validate": {"tf": 1}, "snuba_sdk.Metric.validate": {"tf": 1}, "snuba_sdk.MetricsQuery.validate": {"tf": 1}, "snuba_sdk.MetricsScope.validate": {"tf": 1}, "snuba_sdk.Offset.validate": {"tf": 1}, "snuba_sdk.OrderBy.validate": {"tf": 1}, "snuba_sdk.Query.validate": {"tf": 1}, "snuba_sdk.Relationship.validate": {"tf": 1}, "snuba_sdk.Request.validate": {"tf": 1}, "snuba_sdk.Rollup.validate": {"tf": 1}, "snuba_sdk.Timeseries.validate": {"tf": 1}, "snuba_sdk.Totals.validate": {"tf": 1}}, "df": 26}}}}}}}}, "o": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.And.op": {"tf": 1}, "snuba_sdk.BooleanCondition.op": {"tf": 1}, "snuba_sdk.Condition.op": {"tf": 1}, "snuba_sdk.Op": {"tf": 1}, "snuba_sdk.Op.GT": {"tf": 1}, "snuba_sdk.Op.LT": {"tf": 1}, "snuba_sdk.Op.GTE": {"tf": 1}, "snuba_sdk.Op.LTE": {"tf": 1}, "snuba_sdk.Op.EQ": {"tf": 1}, "snuba_sdk.Op.NEQ": {"tf": 1}, "snuba_sdk.Op.IN": {"tf": 1}, "snuba_sdk.Op.NOT_IN": {"tf": 1}, "snuba_sdk.Op.LIKE": {"tf": 1}, "snuba_sdk.Op.NOT_LIKE": {"tf": 1}, "snuba_sdk.Op.IS_NULL": {"tf": 1}, "snuba_sdk.Op.IS_NOT_NULL": {"tf": 1}, "snuba_sdk.Op.NOT": {"tf": 1}, "snuba_sdk.Or.op": {"tf": 1}}, "df": 18}, "r": {"docs": {"snuba_sdk.BooleanOp.OR": {"tf": 1}, "snuba_sdk.Or": {"tf": 1}, "snuba_sdk.Or.__init__": {"tf": 1}, "snuba_sdk.Or.op": {"tf": 1}, "snuba_sdk.Or.conditions": {"tf": 1}}, "df": 5, "g": {"docs": {"snuba_sdk.MetricsScope.org_ids": {"tf": 1}}, "df": 1}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.OrderBy": {"tf": 1}, "snuba_sdk.OrderBy.__init__": {"tf": 1}, "snuba_sdk.OrderBy.exp": {"tf": 1}, "snuba_sdk.OrderBy.direction": {"tf": 1}, "snuba_sdk.OrderBy.validate": {"tf": 1}, "snuba_sdk.Query.orderby": {"tf": 1}, "snuba_sdk.Query.set_orderby": {"tf": 1}, "snuba_sdk.Rollup.orderby": {"tf": 1}}, "df": 8}}}}}}, "f": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MetricsQuery.offset": {"tf": 1}, "snuba_sdk.MetricsQuery.set_offset": {"tf": 1}, "snuba_sdk.Offset": {"tf": 1}, "snuba_sdk.Offset.__init__": {"tf": 1}, "snuba_sdk.Offset.offset": {"tf": 1.4142135623730951}, "snuba_sdk.Offset.validate": {"tf": 1}, "snuba_sdk.Query.offset": {"tf": 1}, "snuba_sdk.Query.set_offset": {"tf": 1}}, "df": 8}}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Condition": {"tf": 1}, "snuba_sdk.Condition.__init__": {"tf": 1}, "snuba_sdk.Condition.lhs": {"tf": 1}, "snuba_sdk.Condition.op": {"tf": 1}, "snuba_sdk.Condition.rhs": {"tf": 1}, "snuba_sdk.Condition.validate": {"tf": 1}}, "df": 6, "s": {"docs": {"snuba_sdk.And.conditions": {"tf": 1}, "snuba_sdk.BooleanCondition.conditions": {"tf": 1}, "snuba_sdk.Or.conditions": {"tf": 1}}, "df": 3}}}}}}}, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Flags.consistent": {"tf": 1}}, "df": 1}}}}}}}}, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Column.__init__": {"tf": 1}, "snuba_sdk.Column.name": {"tf": 1}, "snuba_sdk.Column.entity": {"tf": 1}, "snuba_sdk.Column.subscriptable": {"tf": 1}, "snuba_sdk.Column.key": {"tf": 1}, "snuba_sdk.Column.validate": {"tf": 1}, "snuba_sdk.Column.validate_data_model": {"tf": 1}}, "df": 8, "s": {"docs": {"snuba_sdk.LimitBy.columns": {"tf": 1}}, "df": 1}}}}}, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.LimitBy.count": {"tf": 1}}, "df": 1}}}}, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.CurriedFunction": {"tf": 1}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1}, "snuba_sdk.CurriedFunction.function": {"tf": 1}, "snuba_sdk.CurriedFunction.initializers": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1}, "snuba_sdk.CurriedFunction.alias": {"tf": 1}, "snuba_sdk.CurriedFunction.validate": {"tf": 1}}, "df": 7}}}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsScope.use_case_id": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}}, "df": 2}}}}, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.ArithmeticOperator.PLUS": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.CurriedFunction.parameters": {"tf": 1}, "snuba_sdk.Formula.parameters": {"tf": 1}, "snuba_sdk.Formula.set_parameters": {"tf": 1}}, "df": 3}}}}}, "s": {"docs": {"snuba_sdk.Timeseries.aggregate_params": {"tf": 1}}, "df": 1}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Request.parent_api": {"tf": 1}}, "df": 1}}}}}, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"snuba_sdk.Metric.public_name": {"tf": 1}, "snuba_sdk.Metric.set_public_name": {"tf": 1}}, "df": 2}}}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MetricsQuery.print": {"tf": 1}, "snuba_sdk.Query.print": {"tf": 1}, "snuba_sdk.Request.print": {"tf": 1}}, "df": 3}}}, "o": {"docs": {}, "df": 0, "j": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MetricsScope.project_ids": {"tf": 1}}, "df": 1}}}}}}}, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.ArithmeticOperator.MINUS": {"tf": 1}}, "df": 1}}}}, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.ArithmeticOperator.MULTIPLY": {"tf": 1}}, "df": 1}}}}}}}, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.Column.validate_data_model": {"tf": 1}, "snuba_sdk.Entity.data_model": {"tf": 1}}, "df": 2}}}}, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Join.get_alias_mappings": {"tf": 1}, "snuba_sdk.MetricsQuery.indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}}, "df": 3}}}}}}, "t": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"snuba_sdk.Query.match": {"tf": 1}, "snuba_sdk.Query.set_match": {"tf": 1}}, "df": 2}}}}, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"snuba_sdk.Metric": {"tf": 1}, "snuba_sdk.Metric.__init__": {"tf": 1}, "snuba_sdk.Metric.public_name": {"tf": 1}, "snuba_sdk.Metric.mri": {"tf": 1}, "snuba_sdk.Metric.id": {"tf": 1}, "snuba_sdk.Metric.entity": {"tf": 1}, "snuba_sdk.Metric.get_fields": {"tf": 1}, "snuba_sdk.Metric.validate": {"tf": 1}, "snuba_sdk.Metric.set_mri": {"tf": 1}, "snuba_sdk.Metric.set_public_name": {"tf": 1}, "snuba_sdk.Metric.set_id": {"tf": 1}, "snuba_sdk.Metric.set_entity": {"tf": 1}, "snuba_sdk.Timeseries.metric": {"tf": 1}, "snuba_sdk.Timeseries.set_metric": {"tf": 1}}, "df": 14, "s": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.query": {"tf": 1}, "snuba_sdk.MetricsQuery.start": {"tf": 1}, "snuba_sdk.MetricsQuery.end": {"tf": 1}, "snuba_sdk.MetricsQuery.rollup": {"tf": 1}, "snuba_sdk.MetricsQuery.scope": {"tf": 1}, "snuba_sdk.MetricsQuery.limit": {"tf": 1}, "snuba_sdk.MetricsQuery.offset": {"tf": 1}, "snuba_sdk.MetricsQuery.indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsQuery.set_query": {"tf": 1}, "snuba_sdk.MetricsQuery.set_start": {"tf": 1}, "snuba_sdk.MetricsQuery.set_end": {"tf": 1}, "snuba_sdk.MetricsQuery.set_rollup": {"tf": 1}, "snuba_sdk.MetricsQuery.set_scope": {"tf": 1}, "snuba_sdk.MetricsQuery.set_limit": {"tf": 1}, "snuba_sdk.MetricsQuery.set_offset": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsQuery.validate": {"tf": 1}, "snuba_sdk.MetricsQuery.serialize": {"tf": 1}, "snuba_sdk.MetricsQuery.print": {"tf": 1}, "snuba_sdk.MetricsQuery.serialize_to_mql": {"tf": 1}}, "df": 22}}}}}, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}, "snuba_sdk.MetricsScope.__init__": {"tf": 1}, "snuba_sdk.MetricsScope.org_ids": {"tf": 1}, "snuba_sdk.MetricsScope.project_ids": {"tf": 1}, "snuba_sdk.MetricsScope.use_case_id": {"tf": 1}, "snuba_sdk.MetricsScope.validate": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}}, "df": 7}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {"snuba_sdk.Metric.mri": {"tf": 1}, "snuba_sdk.Metric.set_mri": {"tf": 1}}, "df": 2}}, "q": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.MetricsQuery.serialize_to_mql": {"tf": 1}, "snuba_sdk.Request.serialize_mql": {"tf": 1}}, "df": 2, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MQLContext": {"tf": 1}}, "df": 1}}}}}}}}}}, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.ArithmeticOperator.DIVIDE": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Direction": {"tf": 1}, "snuba_sdk.Direction.ASC": {"tf": 1}, "snuba_sdk.Direction.DESC": {"tf": 1}, "snuba_sdk.OrderBy.direction": {"tf": 1}}, "df": 4}}}}}}}, "c": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Flags.to_dict": {"tf": 1}, "snuba_sdk.Request.to_dict": {"tf": 1}}, "df": 2}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.Column.validate_data_model": {"tf": 1}, "snuba_sdk.Entity.data_model": {"tf": 1}}, "df": 2, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Request.dataset": {"tf": 1}}, "df": 1}}}}}}, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {"snuba_sdk.Direction.DESC": {"tf": 1}}, "df": 1}}, "b": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "g": {"docs": {"snuba_sdk.Flags.debug": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Flags.dry_run": {"tf": 1}}, "df": 1}}}, "b": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.BooleanCondition": {"tf": 1}, "snuba_sdk.BooleanCondition.__init__": {"tf": 1}, "snuba_sdk.BooleanCondition.op": {"tf": 1}, "snuba_sdk.BooleanCondition.conditions": {"tf": 1}, "snuba_sdk.BooleanCondition.validate": {"tf": 1}}, "df": 5}}}}}}}}}, "o": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.BooleanOp": {"tf": 1}, "snuba_sdk.BooleanOp.AND": {"tf": 1}, "snuba_sdk.BooleanOp.OR": {"tf": 1}}, "df": 3}}}}}}}}}, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Column.name": {"tf": 1}, "snuba_sdk.Entity.name": {"tf": 1}, "snuba_sdk.Formula.function_name": {"tf": 1}, "snuba_sdk.Identifier.name": {"tf": 1}, "snuba_sdk.Metric.public_name": {"tf": 1}, "snuba_sdk.Metric.set_public_name": {"tf": 1}, "snuba_sdk.Relationship.name": {"tf": 1}}, "df": 7}}}, "e": {"docs": {}, "df": 0, "q": {"docs": {"snuba_sdk.Op.NEQ": {"tf": 1}}, "df": 1}}, "o": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Op.NOT_IN": {"tf": 1}, "snuba_sdk.Op.NOT_LIKE": {"tf": 1}, "snuba_sdk.Op.IS_NOT_NULL": {"tf": 1}, "snuba_sdk.Op.NOT": {"tf": 1}}, "df": 4}}, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.Op.IS_NULL": {"tf": 1}, "snuba_sdk.Op.IS_NOT_NULL": {"tf": 1}}, "df": 2}}}}, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Column.subscriptable": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Entity.sample": {"tf": 1}}, "df": 1}}}}}, "e": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Formula.set_parameters": {"tf": 1}, "snuba_sdk.Formula.set_filters": {"tf": 1}, "snuba_sdk.Formula.set_groupby": {"tf": 1}, "snuba_sdk.Metric.set_mri": {"tf": 1}, "snuba_sdk.Metric.set_public_name": {"tf": 1}, "snuba_sdk.Metric.set_id": {"tf": 1}, "snuba_sdk.Metric.set_entity": {"tf": 1}, "snuba_sdk.MetricsQuery.set_query": {"tf": 1}, "snuba_sdk.MetricsQuery.set_start": {"tf": 1}, "snuba_sdk.MetricsQuery.set_end": {"tf": 1}, "snuba_sdk.MetricsQuery.set_rollup": {"tf": 1}, "snuba_sdk.MetricsQuery.set_scope": {"tf": 1}, "snuba_sdk.MetricsQuery.set_limit": {"tf": 1}, "snuba_sdk.MetricsQuery.set_offset": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}, "snuba_sdk.Query.set_match": {"tf": 1}, "snuba_sdk.Query.set_select": {"tf": 1}, "snuba_sdk.Query.set_groupby": {"tf": 1}, "snuba_sdk.Query.set_array_join": {"tf": 1}, "snuba_sdk.Query.set_where": {"tf": 1}, "snuba_sdk.Query.set_having": {"tf": 1}, "snuba_sdk.Query.set_orderby": {"tf": 1}, "snuba_sdk.Query.set_limitby": {"tf": 1}, "snuba_sdk.Query.set_limit": {"tf": 1}, "snuba_sdk.Query.set_offset": {"tf": 1}, "snuba_sdk.Query.set_granularity": {"tf": 1}, "snuba_sdk.Query.set_totals": {"tf": 1}, "snuba_sdk.Timeseries.set_metric": {"tf": 1}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 1}, "snuba_sdk.Timeseries.set_filters": {"tf": 1}, "snuba_sdk.Timeseries.set_groupby": {"tf": 1}}, "df": 32}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsQuery.serialize": {"tf": 1}, "snuba_sdk.MetricsQuery.serialize_to_mql": {"tf": 1}, "snuba_sdk.Query.serialize": {"tf": 1}, "snuba_sdk.Request.serialize": {"tf": 1}, "snuba_sdk.Request.serialize_mql": {"tf": 1}}, "df": 5}}}}}}}, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Query.select": {"tf": 1}, "snuba_sdk.Query.set_select": {"tf": 1}}, "df": 2}}}}}, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MetricsQuery.start": {"tf": 1}, "snuba_sdk.MetricsQuery.set_start": {"tf": 1}}, "df": 2}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsQuery.scope": {"tf": 1}, "snuba_sdk.MetricsQuery.set_scope": {"tf": 1}}, "df": 2}}}}}, "k": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Column.key": {"tf": 1}}, "df": 1}}}, "l": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Condition.lhs": {"tf": 1}, "snuba_sdk.Relationship.lhs": {"tf": 1}}, "df": 2}}, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Flags.legacy": {"tf": 1}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.Lambda": {"tf": 1}, "snuba_sdk.Lambda.__init__": {"tf": 1}, "snuba_sdk.Lambda.identifiers": {"tf": 1}, "snuba_sdk.Lambda.transformation": {"tf": 1}, "snuba_sdk.Lambda.validate": {"tf": 1}}, "df": 5}}}}}, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Limit": {"tf": 1}, "snuba_sdk.Limit.__init__": {"tf": 1}, "snuba_sdk.Limit.limit": {"tf": 1.4142135623730951}, "snuba_sdk.Limit.validate": {"tf": 1}, "snuba_sdk.MetricsQuery.limit": {"tf": 1}, "snuba_sdk.MetricsQuery.set_limit": {"tf": 1}, "snuba_sdk.Query.limit": {"tf": 1}, "snuba_sdk.Query.set_limit": {"tf": 1}}, "df": 8, "b": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.LimitBy": {"tf": 1}, "snuba_sdk.LimitBy.__init__": {"tf": 1}, "snuba_sdk.LimitBy.columns": {"tf": 1}, "snuba_sdk.LimitBy.count": {"tf": 1}, "snuba_sdk.LimitBy.validate": {"tf": 1}, "snuba_sdk.Query.limitby": {"tf": 1}, "snuba_sdk.Query.set_limitby": {"tf": 1}}, "df": 7}}}}}, "k": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Op.LIKE": {"tf": 1}, "snuba_sdk.Op.NOT_LIKE": {"tf": 1}}, "df": 2}}}, "t": {"docs": {"snuba_sdk.Op.LT": {"tf": 1}}, "df": 1, "e": {"docs": {"snuba_sdk.Op.LTE": {"tf": 1}}, "df": 1}}}, "r": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Condition.rhs": {"tf": 1}, "snuba_sdk.Relationship.rhs": {"tf": 1}}, "df": 2}}, "u": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Flags.dry_run": {"tf": 1}}, "df": 1}}, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.Relationship": {"tf": 1}, "snuba_sdk.Relationship.__init__": {"tf": 1}, "snuba_sdk.Relationship.lhs": {"tf": 1}, "snuba_sdk.Relationship.name": {"tf": 1}, "snuba_sdk.Relationship.rhs": {"tf": 1}, "snuba_sdk.Relationship.validate": {"tf": 1}}, "df": 6, "s": {"docs": {"snuba_sdk.Join.relationships": {"tf": 1}}, "df": 1}}}}}}}}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Request": {"tf": 1}, "snuba_sdk.Request.__init__": {"tf": 1}, "snuba_sdk.Request.dataset": {"tf": 1}, "snuba_sdk.Request.app_id": {"tf": 1}, "snuba_sdk.Request.query": {"tf": 1}, "snuba_sdk.Request.flags": {"tf": 1}, "snuba_sdk.Request.parent_api": {"tf": 1}, "snuba_sdk.Request.tenant_ids": {"tf": 1}, "snuba_sdk.Request.validate": {"tf": 1}, "snuba_sdk.Request.to_dict": {"tf": 1}, "snuba_sdk.Request.serialize": {"tf": 1}, "snuba_sdk.Request.serialize_mql": {"tf": 1}, "snuba_sdk.Request.print": {"tf": 1}}, "df": 13}}}}}}, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.MetricsQuery.rollup": {"tf": 1}, "snuba_sdk.MetricsQuery.set_rollup": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1}, "snuba_sdk.Rollup.__init__": {"tf": 1}, "snuba_sdk.Rollup.interval": {"tf": 1}, "snuba_sdk.Rollup.totals": {"tf": 1}, "snuba_sdk.Rollup.orderby": {"tf": 1}, "snuba_sdk.Rollup.granularity": {"tf": 1}, "snuba_sdk.Rollup.validate": {"tf": 1}}, "df": 9}}}}}}, "f": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.CurriedFunction.function": {"tf": 1}, "snuba_sdk.Formula.function_name": {"tf": 1}, "snuba_sdk.Function": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1}, "snuba_sdk.Function.initializers": {"tf": 1}}, "df": 5}}}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Flags": {"tf": 1}, "snuba_sdk.Flags.__init__": {"tf": 1}, "snuba_sdk.Flags.totals": {"tf": 1}, "snuba_sdk.Flags.consistent": {"tf": 1}, "snuba_sdk.Flags.turbo": {"tf": 1}, "snuba_sdk.Flags.debug": {"tf": 1}, "snuba_sdk.Flags.dry_run": {"tf": 1}, "snuba_sdk.Flags.legacy": {"tf": 1}, "snuba_sdk.Flags.validate": {"tf": 1}, "snuba_sdk.Flags.to_dict": {"tf": 1}, "snuba_sdk.Request.flags": {"tf": 1}}, "df": 11}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.Formula": {"tf": 1}, "snuba_sdk.Formula.__init__": {"tf": 1}, "snuba_sdk.Formula.function_name": {"tf": 1}, "snuba_sdk.Formula.parameters": {"tf": 1}, "snuba_sdk.Formula.filters": {"tf": 1}, "snuba_sdk.Formula.groupby": {"tf": 1}, "snuba_sdk.Formula.validate": {"tf": 1}, "snuba_sdk.Formula.set_parameters": {"tf": 1}, "snuba_sdk.Formula.set_filters": {"tf": 1}, "snuba_sdk.Formula.set_groupby": {"tf": 1}}, "df": 10}}}}}}, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Formula.filters": {"tf": 1}, "snuba_sdk.Formula.set_filters": {"tf": 1}, "snuba_sdk.Timeseries.filters": {"tf": 1}, "snuba_sdk.Timeseries.set_filters": {"tf": 1}}, "df": 4}}}}}, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Metric.get_fields": {"tf": 1}, "snuba_sdk.Timeseries.get_fields": {"tf": 1}}, "df": 2}}}}}}, "t": {"docs": {}, "df": 0, "o": {"docs": {"snuba_sdk.Flags.to_dict": {"tf": 1}, "snuba_sdk.MetricsQuery.serialize_to_mql": {"tf": 1}, "snuba_sdk.Request.to_dict": {"tf": 1}}, "df": 3, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Flags.totals": {"tf": 1}, "snuba_sdk.Query.totals": {"tf": 1}, "snuba_sdk.Query.set_totals": {"tf": 1}, "snuba_sdk.Rollup.totals": {"tf": 1}, "snuba_sdk.Totals": {"tf": 1}, "snuba_sdk.Totals.__init__": {"tf": 1}, "snuba_sdk.Totals.totals": {"tf": 1.4142135623730951}, "snuba_sdk.Totals.validate": {"tf": 1}}, "df": 8}}}}}, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "o": {"docs": {"snuba_sdk.Flags.turbo": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Lambda.transformation": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Request.tenant_ids": {"tf": 1}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Timeseries": {"tf": 1}, "snuba_sdk.Timeseries.__init__": {"tf": 1}, "snuba_sdk.Timeseries.metric": {"tf": 1}, "snuba_sdk.Timeseries.aggregate": {"tf": 1}, "snuba_sdk.Timeseries.aggregate_params": {"tf": 1}, "snuba_sdk.Timeseries.filters": {"tf": 1}, "snuba_sdk.Timeseries.groupby": {"tf": 1}, "snuba_sdk.Timeseries.get_fields": {"tf": 1}, "snuba_sdk.Timeseries.validate": {"tf": 1}, "snuba_sdk.Timeseries.set_metric": {"tf": 1}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 1}, "snuba_sdk.Timeseries.set_filters": {"tf": 1}, "snuba_sdk.Timeseries.set_groupby": {"tf": 1}}, "df": 13}}}}}}}}}}, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Formula.groupby": {"tf": 1}, "snuba_sdk.Formula.set_groupby": {"tf": 1}, "snuba_sdk.Query.groupby": {"tf": 1}, "snuba_sdk.Query.set_groupby": {"tf": 1}, "snuba_sdk.Timeseries.groupby": {"tf": 1}, "snuba_sdk.Timeseries.set_groupby": {"tf": 1}}, "df": 6}}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Granularity": {"tf": 1}, "snuba_sdk.Granularity.__init__": {"tf": 1}, "snuba_sdk.Granularity.granularity": {"tf": 1.4142135623730951}, "snuba_sdk.Granularity.validate": {"tf": 1}, "snuba_sdk.Query.granularity": {"tf": 1}, "snuba_sdk.Query.set_granularity": {"tf": 1}, "snuba_sdk.Rollup.granularity": {"tf": 1}}, "df": 7}}}}}}}}}}, "e": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Join.get_alias_mappings": {"tf": 1}, "snuba_sdk.Join.get_entities": {"tf": 1}, "snuba_sdk.Metric.get_fields": {"tf": 1}, "snuba_sdk.Timeseries.get_fields": {"tf": 1}}, "df": 4}}, "t": {"docs": {"snuba_sdk.Op.GT": {"tf": 1}}, "df": 1, "e": {"docs": {"snuba_sdk.Op.GTE": {"tf": 1}}, "df": 1}}}, "j": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Join.__init__": {"tf": 1}, "snuba_sdk.Join.relationships": {"tf": 1}, "snuba_sdk.Join.get_alias_mappings": {"tf": 1}, "snuba_sdk.Join.get_entities": {"tf": 1}, "snuba_sdk.Join.validate": {"tf": 1}, "snuba_sdk.Query.array_join": {"tf": 1}, "snuba_sdk.Query.set_array_join": {"tf": 1}}, "df": 8}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.MetricsQuery.query": {"tf": 1}, "snuba_sdk.MetricsQuery.set_query": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1}, "snuba_sdk.Query.match": {"tf": 1}, "snuba_sdk.Query.select": {"tf": 1}, "snuba_sdk.Query.groupby": {"tf": 1}, "snuba_sdk.Query.array_join": {"tf": 1}, "snuba_sdk.Query.where": {"tf": 1}, "snuba_sdk.Query.having": {"tf": 1}, "snuba_sdk.Query.orderby": {"tf": 1}, "snuba_sdk.Query.limitby": {"tf": 1}, "snuba_sdk.Query.limit": {"tf": 1}, "snuba_sdk.Query.offset": {"tf": 1}, "snuba_sdk.Query.granularity": {"tf": 1}, "snuba_sdk.Query.totals": {"tf": 1}, "snuba_sdk.Query.set_match": {"tf": 1}, "snuba_sdk.Query.set_select": {"tf": 1}, "snuba_sdk.Query.set_groupby": {"tf": 1}, "snuba_sdk.Query.set_array_join": {"tf": 1}, "snuba_sdk.Query.set_where": {"tf": 1}, "snuba_sdk.Query.set_having": {"tf": 1}, "snuba_sdk.Query.set_orderby": {"tf": 1}, "snuba_sdk.Query.set_limitby": {"tf": 1}, "snuba_sdk.Query.set_limit": {"tf": 1}, "snuba_sdk.Query.set_offset": {"tf": 1}, "snuba_sdk.Query.set_granularity": {"tf": 1}, "snuba_sdk.Query.set_totals": {"tf": 1}, "snuba_sdk.Query.validate": {"tf": 1}, "snuba_sdk.Query.serialize": {"tf": 1}, "snuba_sdk.Query.print": {"tf": 1}, "snuba_sdk.Request.query": {"tf": 1}}, "df": 32}}}}}, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsScope.use_case_id": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}}, "df": 2}}}, "w": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Query.where": {"tf": 1}, "snuba_sdk.Query.set_where": {"tf": 1}}, "df": 2}}}}}, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"snuba_sdk.Query.having": {"tf": 1}, "snuba_sdk.Query.set_having": {"tf": 1}}, "df": 2}}}}}}}}, "fullname": {"root": {"docs": {"snuba_sdk.AliasedExpression.__init__": {"tf": 1}, "snuba_sdk.And.__init__": {"tf": 1}, "snuba_sdk.BooleanCondition.__init__": {"tf": 1}, "snuba_sdk.Column.__init__": {"tf": 1}, "snuba_sdk.Condition.__init__": {"tf": 1}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1}, "snuba_sdk.Entity.__init__": {"tf": 1}, "snuba_sdk.Flags.__init__": {"tf": 1}, "snuba_sdk.Formula.__init__": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1}, "snuba_sdk.Granularity.__init__": {"tf": 1}, "snuba_sdk.Identifier.__init__": {"tf": 1}, "snuba_sdk.Join.__init__": {"tf": 1}, "snuba_sdk.Lambda.__init__": {"tf": 1}, "snuba_sdk.Limit.__init__": {"tf": 1}, "snuba_sdk.LimitBy.__init__": {"tf": 1}, "snuba_sdk.Metric.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsScope.__init__": {"tf": 1}, "snuba_sdk.Offset.__init__": {"tf": 1}, "snuba_sdk.Or.__init__": {"tf": 1}, "snuba_sdk.OrderBy.__init__": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1}, "snuba_sdk.Relationship.__init__": {"tf": 1}, "snuba_sdk.Request.__init__": {"tf": 1}, "snuba_sdk.Rollup.__init__": {"tf": 1}, "snuba_sdk.Timeseries.__init__": {"tf": 1}, "snuba_sdk.Totals.__init__": {"tf": 1}}, "df": 28, "s": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.AliasedExpression.__init__": {"tf": 1}, "snuba_sdk.AliasedExpression.exp": {"tf": 1}, "snuba_sdk.AliasedExpression.alias": {"tf": 1}, "snuba_sdk.AliasedExpression.validate": {"tf": 1}, "snuba_sdk.And": {"tf": 1}, "snuba_sdk.And.__init__": {"tf": 1}, "snuba_sdk.And.op": {"tf": 1}, "snuba_sdk.And.conditions": {"tf": 1}, "snuba_sdk.ArithmeticOperator": {"tf": 1}, "snuba_sdk.ArithmeticOperator.PLUS": {"tf": 1}, "snuba_sdk.ArithmeticOperator.MINUS": {"tf": 1}, "snuba_sdk.ArithmeticOperator.MULTIPLY": {"tf": 1}, "snuba_sdk.ArithmeticOperator.DIVIDE": {"tf": 1}, "snuba_sdk.BooleanCondition": {"tf": 1}, "snuba_sdk.BooleanCondition.__init__": {"tf": 1}, "snuba_sdk.BooleanCondition.op": {"tf": 1}, "snuba_sdk.BooleanCondition.conditions": {"tf": 1}, "snuba_sdk.BooleanCondition.validate": {"tf": 1}, "snuba_sdk.BooleanOp": {"tf": 1}, "snuba_sdk.BooleanOp.AND": {"tf": 1}, "snuba_sdk.BooleanOp.OR": {"tf": 1}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Column.__init__": {"tf": 1}, "snuba_sdk.Column.name": {"tf": 1}, "snuba_sdk.Column.entity": {"tf": 1}, "snuba_sdk.Column.subscriptable": {"tf": 1}, "snuba_sdk.Column.key": {"tf": 1}, "snuba_sdk.Column.validate": {"tf": 1}, "snuba_sdk.Column.validate_data_model": {"tf": 1}, "snuba_sdk.Condition": {"tf": 1}, "snuba_sdk.Condition.__init__": {"tf": 1}, "snuba_sdk.Condition.lhs": {"tf": 1}, "snuba_sdk.Condition.op": {"tf": 1}, "snuba_sdk.Condition.rhs": {"tf": 1}, "snuba_sdk.Condition.validate": {"tf": 1}, "snuba_sdk.CurriedFunction": {"tf": 1}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1}, "snuba_sdk.CurriedFunction.function": {"tf": 1}, "snuba_sdk.CurriedFunction.initializers": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1}, "snuba_sdk.CurriedFunction.alias": {"tf": 1}, "snuba_sdk.CurriedFunction.validate": {"tf": 1}, "snuba_sdk.Direction": {"tf": 1}, "snuba_sdk.Direction.ASC": {"tf": 1}, "snuba_sdk.Direction.DESC": {"tf": 1}, "snuba_sdk.Entity": {"tf": 1}, "snuba_sdk.Entity.__init__": {"tf": 1}, "snuba_sdk.Entity.name": {"tf": 1}, "snuba_sdk.Entity.alias": {"tf": 1}, "snuba_sdk.Entity.sample": {"tf": 1}, "snuba_sdk.Entity.data_model": {"tf": 1}, "snuba_sdk.Entity.validate": {"tf": 1}, "snuba_sdk.Flags": {"tf": 1}, "snuba_sdk.Flags.__init__": {"tf": 1}, "snuba_sdk.Flags.totals": {"tf": 1}, "snuba_sdk.Flags.consistent": {"tf": 1}, "snuba_sdk.Flags.turbo": {"tf": 1}, "snuba_sdk.Flags.debug": {"tf": 1}, "snuba_sdk.Flags.dry_run": {"tf": 1}, "snuba_sdk.Flags.legacy": {"tf": 1}, "snuba_sdk.Flags.validate": {"tf": 1}, "snuba_sdk.Flags.to_dict": {"tf": 1}, "snuba_sdk.Formula": {"tf": 1}, "snuba_sdk.Formula.__init__": {"tf": 1}, "snuba_sdk.Formula.function_name": {"tf": 1}, "snuba_sdk.Formula.parameters": {"tf": 1}, "snuba_sdk.Formula.filters": {"tf": 1}, "snuba_sdk.Formula.groupby": {"tf": 1}, "snuba_sdk.Formula.validate": {"tf": 1}, "snuba_sdk.Formula.set_parameters": {"tf": 1}, "snuba_sdk.Formula.set_filters": {"tf": 1}, "snuba_sdk.Formula.set_groupby": {"tf": 1}, "snuba_sdk.Function": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1}, "snuba_sdk.Function.initializers": {"tf": 1}, "snuba_sdk.Granularity": {"tf": 1}, "snuba_sdk.Granularity.__init__": {"tf": 1}, "snuba_sdk.Granularity.granularity": {"tf": 1}, "snuba_sdk.Granularity.validate": {"tf": 1}, "snuba_sdk.Identifier": {"tf": 1}, "snuba_sdk.Identifier.__init__": {"tf": 1}, "snuba_sdk.Identifier.name": {"tf": 1}, "snuba_sdk.Identifier.validate": {"tf": 1}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Join.__init__": {"tf": 1}, "snuba_sdk.Join.relationships": {"tf": 1}, "snuba_sdk.Join.get_alias_mappings": {"tf": 1}, "snuba_sdk.Join.get_entities": {"tf": 1}, "snuba_sdk.Join.validate": {"tf": 1}, "snuba_sdk.Lambda": {"tf": 1}, "snuba_sdk.Lambda.__init__": {"tf": 1}, "snuba_sdk.Lambda.identifiers": {"tf": 1}, "snuba_sdk.Lambda.transformation": {"tf": 1}, "snuba_sdk.Lambda.validate": {"tf": 1}, "snuba_sdk.Limit": {"tf": 1}, "snuba_sdk.Limit.__init__": {"tf": 1}, "snuba_sdk.Limit.limit": {"tf": 1}, "snuba_sdk.Limit.validate": {"tf": 1}, "snuba_sdk.LimitBy": {"tf": 1}, "snuba_sdk.LimitBy.__init__": {"tf": 1}, "snuba_sdk.LimitBy.columns": {"tf": 1}, "snuba_sdk.LimitBy.count": {"tf": 1}, "snuba_sdk.LimitBy.validate": {"tf": 1}, "snuba_sdk.Metric": {"tf": 1}, "snuba_sdk.Metric.__init__": {"tf": 1}, "snuba_sdk.Metric.public_name": {"tf": 1}, "snuba_sdk.Metric.mri": {"tf": 1}, "snuba_sdk.Metric.id": {"tf": 1}, "snuba_sdk.Metric.entity": {"tf": 1}, "snuba_sdk.Metric.get_fields": {"tf": 1}, "snuba_sdk.Metric.validate": {"tf": 1}, "snuba_sdk.Metric.set_mri": {"tf": 1}, "snuba_sdk.Metric.set_public_name": {"tf": 1}, "snuba_sdk.Metric.set_id": {"tf": 1}, "snuba_sdk.Metric.set_entity": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.query": {"tf": 1}, "snuba_sdk.MetricsQuery.start": {"tf": 1}, "snuba_sdk.MetricsQuery.end": {"tf": 1}, "snuba_sdk.MetricsQuery.rollup": {"tf": 1}, "snuba_sdk.MetricsQuery.scope": {"tf": 1}, "snuba_sdk.MetricsQuery.limit": {"tf": 1}, "snuba_sdk.MetricsQuery.offset": {"tf": 1}, "snuba_sdk.MetricsQuery.indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsQuery.set_query": {"tf": 1}, "snuba_sdk.MetricsQuery.set_start": {"tf": 1}, "snuba_sdk.MetricsQuery.set_end": {"tf": 1}, "snuba_sdk.MetricsQuery.set_rollup": {"tf": 1}, "snuba_sdk.MetricsQuery.set_scope": {"tf": 1}, "snuba_sdk.MetricsQuery.set_limit": {"tf": 1}, "snuba_sdk.MetricsQuery.set_offset": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsQuery.validate": {"tf": 1}, "snuba_sdk.MetricsQuery.serialize": {"tf": 1}, "snuba_sdk.MetricsQuery.print": {"tf": 1}, "snuba_sdk.MetricsQuery.serialize_to_mql": {"tf": 1}, "snuba_sdk.MetricsScope": {"tf": 1}, "snuba_sdk.MetricsScope.__init__": {"tf": 1}, "snuba_sdk.MetricsScope.org_ids": {"tf": 1}, "snuba_sdk.MetricsScope.project_ids": {"tf": 1}, "snuba_sdk.MetricsScope.use_case_id": {"tf": 1}, "snuba_sdk.MetricsScope.validate": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}, "snuba_sdk.MQLContext": {"tf": 1}, "snuba_sdk.Offset": {"tf": 1}, "snuba_sdk.Offset.__init__": {"tf": 1}, "snuba_sdk.Offset.offset": {"tf": 1}, "snuba_sdk.Offset.validate": {"tf": 1}, "snuba_sdk.Op": {"tf": 1}, "snuba_sdk.Op.GT": {"tf": 1}, "snuba_sdk.Op.LT": {"tf": 1}, "snuba_sdk.Op.GTE": {"tf": 1}, "snuba_sdk.Op.LTE": {"tf": 1}, "snuba_sdk.Op.EQ": {"tf": 1}, "snuba_sdk.Op.NEQ": {"tf": 1}, "snuba_sdk.Op.IN": {"tf": 1}, "snuba_sdk.Op.NOT_IN": {"tf": 1}, "snuba_sdk.Op.LIKE": {"tf": 1}, "snuba_sdk.Op.NOT_LIKE": {"tf": 1}, "snuba_sdk.Op.IS_NULL": {"tf": 1}, "snuba_sdk.Op.IS_NOT_NULL": {"tf": 1}, "snuba_sdk.Op.NOT": {"tf": 1}, "snuba_sdk.Or": {"tf": 1}, "snuba_sdk.Or.__init__": {"tf": 1}, "snuba_sdk.Or.op": {"tf": 1}, "snuba_sdk.Or.conditions": {"tf": 1}, "snuba_sdk.OrderBy": {"tf": 1}, "snuba_sdk.OrderBy.__init__": {"tf": 1}, "snuba_sdk.OrderBy.exp": {"tf": 1}, "snuba_sdk.OrderBy.direction": {"tf": 1}, "snuba_sdk.OrderBy.validate": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1}, "snuba_sdk.Query.match": {"tf": 1}, "snuba_sdk.Query.select": {"tf": 1}, "snuba_sdk.Query.groupby": {"tf": 1}, "snuba_sdk.Query.array_join": {"tf": 1}, "snuba_sdk.Query.where": {"tf": 1}, "snuba_sdk.Query.having": {"tf": 1}, "snuba_sdk.Query.orderby": {"tf": 1}, "snuba_sdk.Query.limitby": {"tf": 1}, "snuba_sdk.Query.limit": {"tf": 1}, "snuba_sdk.Query.offset": {"tf": 1}, "snuba_sdk.Query.granularity": {"tf": 1}, "snuba_sdk.Query.totals": {"tf": 1}, "snuba_sdk.Query.set_match": {"tf": 1}, "snuba_sdk.Query.set_select": {"tf": 1}, "snuba_sdk.Query.set_groupby": {"tf": 1}, "snuba_sdk.Query.set_array_join": {"tf": 1}, "snuba_sdk.Query.set_where": {"tf": 1}, "snuba_sdk.Query.set_having": {"tf": 1}, "snuba_sdk.Query.set_orderby": {"tf": 1}, "snuba_sdk.Query.set_limitby": {"tf": 1}, "snuba_sdk.Query.set_limit": {"tf": 1}, "snuba_sdk.Query.set_offset": {"tf": 1}, "snuba_sdk.Query.set_granularity": {"tf": 1}, "snuba_sdk.Query.set_totals": {"tf": 1}, "snuba_sdk.Query.validate": {"tf": 1}, "snuba_sdk.Query.serialize": {"tf": 1}, "snuba_sdk.Query.print": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}, "snuba_sdk.Relationship.__init__": {"tf": 1}, "snuba_sdk.Relationship.lhs": {"tf": 1}, "snuba_sdk.Relationship.name": {"tf": 1}, "snuba_sdk.Relationship.rhs": {"tf": 1}, "snuba_sdk.Relationship.validate": {"tf": 1}, "snuba_sdk.Request": {"tf": 1}, "snuba_sdk.Request.__init__": {"tf": 1}, "snuba_sdk.Request.dataset": {"tf": 1}, "snuba_sdk.Request.app_id": {"tf": 1}, "snuba_sdk.Request.query": {"tf": 1}, "snuba_sdk.Request.flags": {"tf": 1}, "snuba_sdk.Request.parent_api": {"tf": 1}, "snuba_sdk.Request.tenant_ids": {"tf": 1}, "snuba_sdk.Request.validate": {"tf": 1}, "snuba_sdk.Request.to_dict": {"tf": 1}, "snuba_sdk.Request.serialize": {"tf": 1}, "snuba_sdk.Request.serialize_mql": {"tf": 1}, "snuba_sdk.Request.print": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1}, "snuba_sdk.Rollup.__init__": {"tf": 1}, "snuba_sdk.Rollup.interval": {"tf": 1}, "snuba_sdk.Rollup.totals": {"tf": 1}, "snuba_sdk.Rollup.orderby": {"tf": 1}, "snuba_sdk.Rollup.granularity": {"tf": 1}, "snuba_sdk.Rollup.validate": {"tf": 1}, "snuba_sdk.Timeseries": {"tf": 1}, "snuba_sdk.Timeseries.__init__": {"tf": 1}, "snuba_sdk.Timeseries.metric": {"tf": 1}, "snuba_sdk.Timeseries.aggregate": {"tf": 1}, "snuba_sdk.Timeseries.aggregate_params": {"tf": 1}, "snuba_sdk.Timeseries.filters": {"tf": 1}, "snuba_sdk.Timeseries.groupby": {"tf": 1}, "snuba_sdk.Timeseries.get_fields": {"tf": 1}, "snuba_sdk.Timeseries.validate": {"tf": 1}, "snuba_sdk.Timeseries.set_metric": {"tf": 1}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 1}, "snuba_sdk.Timeseries.set_filters": {"tf": 1}, "snuba_sdk.Timeseries.set_groupby": {"tf": 1}, "snuba_sdk.Totals": {"tf": 1}, "snuba_sdk.Totals.__init__": {"tf": 1}, "snuba_sdk.Totals.totals": {"tf": 1}, "snuba_sdk.Totals.validate": {"tf": 1}}, "df": 246}}}}, "d": {"docs": {}, "df": 0, "k": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.AliasedExpression.__init__": {"tf": 1}, "snuba_sdk.AliasedExpression.exp": {"tf": 1}, "snuba_sdk.AliasedExpression.alias": {"tf": 1}, "snuba_sdk.AliasedExpression.validate": {"tf": 1}, "snuba_sdk.And": {"tf": 1}, "snuba_sdk.And.__init__": {"tf": 1}, "snuba_sdk.And.op": {"tf": 1}, "snuba_sdk.And.conditions": {"tf": 1}, "snuba_sdk.ArithmeticOperator": {"tf": 1}, "snuba_sdk.ArithmeticOperator.PLUS": {"tf": 1}, "snuba_sdk.ArithmeticOperator.MINUS": {"tf": 1}, "snuba_sdk.ArithmeticOperator.MULTIPLY": {"tf": 1}, "snuba_sdk.ArithmeticOperator.DIVIDE": {"tf": 1}, "snuba_sdk.BooleanCondition": {"tf": 1}, "snuba_sdk.BooleanCondition.__init__": {"tf": 1}, "snuba_sdk.BooleanCondition.op": {"tf": 1}, "snuba_sdk.BooleanCondition.conditions": {"tf": 1}, "snuba_sdk.BooleanCondition.validate": {"tf": 1}, "snuba_sdk.BooleanOp": {"tf": 1}, "snuba_sdk.BooleanOp.AND": {"tf": 1}, "snuba_sdk.BooleanOp.OR": {"tf": 1}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Column.__init__": {"tf": 1}, "snuba_sdk.Column.name": {"tf": 1}, "snuba_sdk.Column.entity": {"tf": 1}, "snuba_sdk.Column.subscriptable": {"tf": 1}, "snuba_sdk.Column.key": {"tf": 1}, "snuba_sdk.Column.validate": {"tf": 1}, "snuba_sdk.Column.validate_data_model": {"tf": 1}, "snuba_sdk.Condition": {"tf": 1}, "snuba_sdk.Condition.__init__": {"tf": 1}, "snuba_sdk.Condition.lhs": {"tf": 1}, "snuba_sdk.Condition.op": {"tf": 1}, "snuba_sdk.Condition.rhs": {"tf": 1}, "snuba_sdk.Condition.validate": {"tf": 1}, "snuba_sdk.CurriedFunction": {"tf": 1}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1}, "snuba_sdk.CurriedFunction.function": {"tf": 1}, "snuba_sdk.CurriedFunction.initializers": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1}, "snuba_sdk.CurriedFunction.alias": {"tf": 1}, "snuba_sdk.CurriedFunction.validate": {"tf": 1}, "snuba_sdk.Direction": {"tf": 1}, "snuba_sdk.Direction.ASC": {"tf": 1}, "snuba_sdk.Direction.DESC": {"tf": 1}, "snuba_sdk.Entity": {"tf": 1}, "snuba_sdk.Entity.__init__": {"tf": 1}, "snuba_sdk.Entity.name": {"tf": 1}, "snuba_sdk.Entity.alias": {"tf": 1}, "snuba_sdk.Entity.sample": {"tf": 1}, "snuba_sdk.Entity.data_model": {"tf": 1}, "snuba_sdk.Entity.validate": {"tf": 1}, "snuba_sdk.Flags": {"tf": 1}, "snuba_sdk.Flags.__init__": {"tf": 1}, "snuba_sdk.Flags.totals": {"tf": 1}, "snuba_sdk.Flags.consistent": {"tf": 1}, "snuba_sdk.Flags.turbo": {"tf": 1}, "snuba_sdk.Flags.debug": {"tf": 1}, "snuba_sdk.Flags.dry_run": {"tf": 1}, "snuba_sdk.Flags.legacy": {"tf": 1}, "snuba_sdk.Flags.validate": {"tf": 1}, "snuba_sdk.Flags.to_dict": {"tf": 1}, "snuba_sdk.Formula": {"tf": 1}, "snuba_sdk.Formula.__init__": {"tf": 1}, "snuba_sdk.Formula.function_name": {"tf": 1}, "snuba_sdk.Formula.parameters": {"tf": 1}, "snuba_sdk.Formula.filters": {"tf": 1}, "snuba_sdk.Formula.groupby": {"tf": 1}, "snuba_sdk.Formula.validate": {"tf": 1}, "snuba_sdk.Formula.set_parameters": {"tf": 1}, "snuba_sdk.Formula.set_filters": {"tf": 1}, "snuba_sdk.Formula.set_groupby": {"tf": 1}, "snuba_sdk.Function": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1}, "snuba_sdk.Function.initializers": {"tf": 1}, "snuba_sdk.Granularity": {"tf": 1}, "snuba_sdk.Granularity.__init__": {"tf": 1}, "snuba_sdk.Granularity.granularity": {"tf": 1}, "snuba_sdk.Granularity.validate": {"tf": 1}, "snuba_sdk.Identifier": {"tf": 1}, "snuba_sdk.Identifier.__init__": {"tf": 1}, "snuba_sdk.Identifier.name": {"tf": 1}, "snuba_sdk.Identifier.validate": {"tf": 1}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Join.__init__": {"tf": 1}, "snuba_sdk.Join.relationships": {"tf": 1}, "snuba_sdk.Join.get_alias_mappings": {"tf": 1}, "snuba_sdk.Join.get_entities": {"tf": 1}, "snuba_sdk.Join.validate": {"tf": 1}, "snuba_sdk.Lambda": {"tf": 1}, "snuba_sdk.Lambda.__init__": {"tf": 1}, "snuba_sdk.Lambda.identifiers": {"tf": 1}, "snuba_sdk.Lambda.transformation": {"tf": 1}, "snuba_sdk.Lambda.validate": {"tf": 1}, "snuba_sdk.Limit": {"tf": 1}, "snuba_sdk.Limit.__init__": {"tf": 1}, "snuba_sdk.Limit.limit": {"tf": 1}, "snuba_sdk.Limit.validate": {"tf": 1}, "snuba_sdk.LimitBy": {"tf": 1}, "snuba_sdk.LimitBy.__init__": {"tf": 1}, "snuba_sdk.LimitBy.columns": {"tf": 1}, "snuba_sdk.LimitBy.count": {"tf": 1}, "snuba_sdk.LimitBy.validate": {"tf": 1}, "snuba_sdk.Metric": {"tf": 1}, "snuba_sdk.Metric.__init__": {"tf": 1}, "snuba_sdk.Metric.public_name": {"tf": 1}, "snuba_sdk.Metric.mri": {"tf": 1}, "snuba_sdk.Metric.id": {"tf": 1}, "snuba_sdk.Metric.entity": {"tf": 1}, "snuba_sdk.Metric.get_fields": {"tf": 1}, "snuba_sdk.Metric.validate": {"tf": 1}, "snuba_sdk.Metric.set_mri": {"tf": 1}, "snuba_sdk.Metric.set_public_name": {"tf": 1}, "snuba_sdk.Metric.set_id": {"tf": 1}, "snuba_sdk.Metric.set_entity": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.query": {"tf": 1}, "snuba_sdk.MetricsQuery.start": {"tf": 1}, "snuba_sdk.MetricsQuery.end": {"tf": 1}, "snuba_sdk.MetricsQuery.rollup": {"tf": 1}, "snuba_sdk.MetricsQuery.scope": {"tf": 1}, "snuba_sdk.MetricsQuery.limit": {"tf": 1}, "snuba_sdk.MetricsQuery.offset": {"tf": 1}, "snuba_sdk.MetricsQuery.indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsQuery.set_query": {"tf": 1}, "snuba_sdk.MetricsQuery.set_start": {"tf": 1}, "snuba_sdk.MetricsQuery.set_end": {"tf": 1}, "snuba_sdk.MetricsQuery.set_rollup": {"tf": 1}, "snuba_sdk.MetricsQuery.set_scope": {"tf": 1}, "snuba_sdk.MetricsQuery.set_limit": {"tf": 1}, "snuba_sdk.MetricsQuery.set_offset": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsQuery.validate": {"tf": 1}, "snuba_sdk.MetricsQuery.serialize": {"tf": 1}, "snuba_sdk.MetricsQuery.print": {"tf": 1}, "snuba_sdk.MetricsQuery.serialize_to_mql": {"tf": 1}, "snuba_sdk.MetricsScope": {"tf": 1}, "snuba_sdk.MetricsScope.__init__": {"tf": 1}, "snuba_sdk.MetricsScope.org_ids": {"tf": 1}, "snuba_sdk.MetricsScope.project_ids": {"tf": 1}, "snuba_sdk.MetricsScope.use_case_id": {"tf": 1}, "snuba_sdk.MetricsScope.validate": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}, "snuba_sdk.MQLContext": {"tf": 1}, "snuba_sdk.Offset": {"tf": 1}, "snuba_sdk.Offset.__init__": {"tf": 1}, "snuba_sdk.Offset.offset": {"tf": 1}, "snuba_sdk.Offset.validate": {"tf": 1}, "snuba_sdk.Op": {"tf": 1}, "snuba_sdk.Op.GT": {"tf": 1}, "snuba_sdk.Op.LT": {"tf": 1}, "snuba_sdk.Op.GTE": {"tf": 1}, "snuba_sdk.Op.LTE": {"tf": 1}, "snuba_sdk.Op.EQ": {"tf": 1}, "snuba_sdk.Op.NEQ": {"tf": 1}, "snuba_sdk.Op.IN": {"tf": 1}, "snuba_sdk.Op.NOT_IN": {"tf": 1}, "snuba_sdk.Op.LIKE": {"tf": 1}, "snuba_sdk.Op.NOT_LIKE": {"tf": 1}, "snuba_sdk.Op.IS_NULL": {"tf": 1}, "snuba_sdk.Op.IS_NOT_NULL": {"tf": 1}, "snuba_sdk.Op.NOT": {"tf": 1}, "snuba_sdk.Or": {"tf": 1}, "snuba_sdk.Or.__init__": {"tf": 1}, "snuba_sdk.Or.op": {"tf": 1}, "snuba_sdk.Or.conditions": {"tf": 1}, "snuba_sdk.OrderBy": {"tf": 1}, "snuba_sdk.OrderBy.__init__": {"tf": 1}, "snuba_sdk.OrderBy.exp": {"tf": 1}, "snuba_sdk.OrderBy.direction": {"tf": 1}, "snuba_sdk.OrderBy.validate": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1}, "snuba_sdk.Query.match": {"tf": 1}, "snuba_sdk.Query.select": {"tf": 1}, "snuba_sdk.Query.groupby": {"tf": 1}, "snuba_sdk.Query.array_join": {"tf": 1}, "snuba_sdk.Query.where": {"tf": 1}, "snuba_sdk.Query.having": {"tf": 1}, "snuba_sdk.Query.orderby": {"tf": 1}, "snuba_sdk.Query.limitby": {"tf": 1}, "snuba_sdk.Query.limit": {"tf": 1}, "snuba_sdk.Query.offset": {"tf": 1}, "snuba_sdk.Query.granularity": {"tf": 1}, "snuba_sdk.Query.totals": {"tf": 1}, "snuba_sdk.Query.set_match": {"tf": 1}, "snuba_sdk.Query.set_select": {"tf": 1}, "snuba_sdk.Query.set_groupby": {"tf": 1}, "snuba_sdk.Query.set_array_join": {"tf": 1}, "snuba_sdk.Query.set_where": {"tf": 1}, "snuba_sdk.Query.set_having": {"tf": 1}, "snuba_sdk.Query.set_orderby": {"tf": 1}, "snuba_sdk.Query.set_limitby": {"tf": 1}, "snuba_sdk.Query.set_limit": {"tf": 1}, "snuba_sdk.Query.set_offset": {"tf": 1}, "snuba_sdk.Query.set_granularity": {"tf": 1}, "snuba_sdk.Query.set_totals": {"tf": 1}, "snuba_sdk.Query.validate": {"tf": 1}, "snuba_sdk.Query.serialize": {"tf": 1}, "snuba_sdk.Query.print": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}, "snuba_sdk.Relationship.__init__": {"tf": 1}, "snuba_sdk.Relationship.lhs": {"tf": 1}, "snuba_sdk.Relationship.name": {"tf": 1}, "snuba_sdk.Relationship.rhs": {"tf": 1}, "snuba_sdk.Relationship.validate": {"tf": 1}, "snuba_sdk.Request": {"tf": 1}, "snuba_sdk.Request.__init__": {"tf": 1}, "snuba_sdk.Request.dataset": {"tf": 1}, "snuba_sdk.Request.app_id": {"tf": 1}, "snuba_sdk.Request.query": {"tf": 1}, "snuba_sdk.Request.flags": {"tf": 1}, "snuba_sdk.Request.parent_api": {"tf": 1}, "snuba_sdk.Request.tenant_ids": {"tf": 1}, "snuba_sdk.Request.validate": {"tf": 1}, "snuba_sdk.Request.to_dict": {"tf": 1}, "snuba_sdk.Request.serialize": {"tf": 1}, "snuba_sdk.Request.serialize_mql": {"tf": 1}, "snuba_sdk.Request.print": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1}, "snuba_sdk.Rollup.__init__": {"tf": 1}, "snuba_sdk.Rollup.interval": {"tf": 1}, "snuba_sdk.Rollup.totals": {"tf": 1}, "snuba_sdk.Rollup.orderby": {"tf": 1}, "snuba_sdk.Rollup.granularity": {"tf": 1}, "snuba_sdk.Rollup.validate": {"tf": 1}, "snuba_sdk.Timeseries": {"tf": 1}, "snuba_sdk.Timeseries.__init__": {"tf": 1}, "snuba_sdk.Timeseries.metric": {"tf": 1}, "snuba_sdk.Timeseries.aggregate": {"tf": 1}, "snuba_sdk.Timeseries.aggregate_params": {"tf": 1}, "snuba_sdk.Timeseries.filters": {"tf": 1}, "snuba_sdk.Timeseries.groupby": {"tf": 1}, "snuba_sdk.Timeseries.get_fields": {"tf": 1}, "snuba_sdk.Timeseries.validate": {"tf": 1}, "snuba_sdk.Timeseries.set_metric": {"tf": 1}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 1}, "snuba_sdk.Timeseries.set_filters": {"tf": 1}, "snuba_sdk.Timeseries.set_groupby": {"tf": 1}, "snuba_sdk.Totals": {"tf": 1}, "snuba_sdk.Totals.__init__": {"tf": 1}, "snuba_sdk.Totals.totals": {"tf": 1}, "snuba_sdk.Totals.validate": {"tf": 1}}, "df": 246}}, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Column.subscriptable": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Entity.sample": {"tf": 1}}, "df": 1}}}}}, "e": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Formula.set_parameters": {"tf": 1}, "snuba_sdk.Formula.set_filters": {"tf": 1}, "snuba_sdk.Formula.set_groupby": {"tf": 1}, "snuba_sdk.Metric.set_mri": {"tf": 1}, "snuba_sdk.Metric.set_public_name": {"tf": 1}, "snuba_sdk.Metric.set_id": {"tf": 1}, "snuba_sdk.Metric.set_entity": {"tf": 1}, "snuba_sdk.MetricsQuery.set_query": {"tf": 1}, "snuba_sdk.MetricsQuery.set_start": {"tf": 1}, "snuba_sdk.MetricsQuery.set_end": {"tf": 1}, "snuba_sdk.MetricsQuery.set_rollup": {"tf": 1}, "snuba_sdk.MetricsQuery.set_scope": {"tf": 1}, "snuba_sdk.MetricsQuery.set_limit": {"tf": 1}, "snuba_sdk.MetricsQuery.set_offset": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}, "snuba_sdk.Query.set_match": {"tf": 1}, "snuba_sdk.Query.set_select": {"tf": 1}, "snuba_sdk.Query.set_groupby": {"tf": 1}, "snuba_sdk.Query.set_array_join": {"tf": 1}, "snuba_sdk.Query.set_where": {"tf": 1}, "snuba_sdk.Query.set_having": {"tf": 1}, "snuba_sdk.Query.set_orderby": {"tf": 1}, "snuba_sdk.Query.set_limitby": {"tf": 1}, "snuba_sdk.Query.set_limit": {"tf": 1}, "snuba_sdk.Query.set_offset": {"tf": 1}, "snuba_sdk.Query.set_granularity": {"tf": 1}, "snuba_sdk.Query.set_totals": {"tf": 1}, "snuba_sdk.Timeseries.set_metric": {"tf": 1}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 1}, "snuba_sdk.Timeseries.set_filters": {"tf": 1}, "snuba_sdk.Timeseries.set_groupby": {"tf": 1}}, "df": 32}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsQuery.serialize": {"tf": 1}, "snuba_sdk.MetricsQuery.serialize_to_mql": {"tf": 1}, "snuba_sdk.Query.serialize": {"tf": 1}, "snuba_sdk.Request.serialize": {"tf": 1}, "snuba_sdk.Request.serialize_mql": {"tf": 1}}, "df": 5}}}}}}}, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Query.select": {"tf": 1}, "snuba_sdk.Query.set_select": {"tf": 1}}, "df": 2}}}}}, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MetricsQuery.start": {"tf": 1}, "snuba_sdk.MetricsQuery.set_start": {"tf": 1}}, "df": 2}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsQuery.scope": {"tf": 1}, "snuba_sdk.MetricsQuery.set_scope": {"tf": 1}}, "df": 2}}}}}, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.AliasedExpression.alias": {"tf": 1}, "snuba_sdk.CurriedFunction.alias": {"tf": 1}, "snuba_sdk.Entity.alias": {"tf": 1}, "snuba_sdk.Join.get_alias_mappings": {"tf": 1}}, "df": 4, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.AliasedExpression.__init__": {"tf": 1}, "snuba_sdk.AliasedExpression.exp": {"tf": 1}, "snuba_sdk.AliasedExpression.alias": {"tf": 1}, "snuba_sdk.AliasedExpression.validate": {"tf": 1}}, "df": 5}}}}}}}}}}}}}}}}, "n": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.And": {"tf": 1}, "snuba_sdk.And.__init__": {"tf": 1}, "snuba_sdk.And.op": {"tf": 1}, "snuba_sdk.And.conditions": {"tf": 1}, "snuba_sdk.BooleanOp.AND": {"tf": 1}}, "df": 5}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.ArithmeticOperator": {"tf": 1}, "snuba_sdk.ArithmeticOperator.PLUS": {"tf": 1}, "snuba_sdk.ArithmeticOperator.MINUS": {"tf": 1}, "snuba_sdk.ArithmeticOperator.MULTIPLY": {"tf": 1}, "snuba_sdk.ArithmeticOperator.DIVIDE": {"tf": 1}}, "df": 5}}}}}}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Query.array_join": {"tf": 1}, "snuba_sdk.Query.set_array_join": {"tf": 1}}, "df": 2}}}}, "s": {"docs": {}, "df": 0, "c": {"docs": {"snuba_sdk.Direction.ASC": {"tf": 1}}, "df": 1}}, "p": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.Request.app_id": {"tf": 1}}, "df": 1}, "i": {"docs": {"snuba_sdk.Request.parent_api": {"tf": 1}}, "df": 1}}, "g": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Timeseries.aggregate": {"tf": 1}, "snuba_sdk.Timeseries.aggregate_params": {"tf": 1}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 1}}, "df": 3}}}}}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Op.IN": {"tf": 1}, "snuba_sdk.Op.NOT_IN": {"tf": 1}}, "df": 2, "i": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.AliasedExpression.__init__": {"tf": 1}, "snuba_sdk.And.__init__": {"tf": 1}, "snuba_sdk.BooleanCondition.__init__": {"tf": 1}, "snuba_sdk.Column.__init__": {"tf": 1}, "snuba_sdk.Condition.__init__": {"tf": 1}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1}, "snuba_sdk.Entity.__init__": {"tf": 1}, "snuba_sdk.Flags.__init__": {"tf": 1}, "snuba_sdk.Formula.__init__": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1}, "snuba_sdk.Granularity.__init__": {"tf": 1}, "snuba_sdk.Identifier.__init__": {"tf": 1}, "snuba_sdk.Join.__init__": {"tf": 1}, "snuba_sdk.Lambda.__init__": {"tf": 1}, "snuba_sdk.Limit.__init__": {"tf": 1}, "snuba_sdk.LimitBy.__init__": {"tf": 1}, "snuba_sdk.Metric.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsScope.__init__": {"tf": 1}, "snuba_sdk.Offset.__init__": {"tf": 1}, "snuba_sdk.Or.__init__": {"tf": 1}, "snuba_sdk.OrderBy.__init__": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1}, "snuba_sdk.Relationship.__init__": {"tf": 1}, "snuba_sdk.Request.__init__": {"tf": 1}, "snuba_sdk.Rollup.__init__": {"tf": 1}, "snuba_sdk.Timeseries.__init__": {"tf": 1}, "snuba_sdk.Totals.__init__": {"tf": 1}}, "df": 28, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.CurriedFunction.initializers": {"tf": 1}, "snuba_sdk.Function.initializers": {"tf": 1}}, "df": 2}}}}}}}}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.MetricsQuery.indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}}, "df": 2}}}}}, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.Rollup.interval": {"tf": 1}}, "df": 1}}}}}}}, "d": {"docs": {"snuba_sdk.Metric.id": {"tf": 1}, "snuba_sdk.Metric.set_id": {"tf": 1}, "snuba_sdk.MetricsScope.use_case_id": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}, "snuba_sdk.Request.app_id": {"tf": 1}}, "df": 5, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.Identifier": {"tf": 1}, "snuba_sdk.Identifier.__init__": {"tf": 1}, "snuba_sdk.Identifier.name": {"tf": 1}, "snuba_sdk.Identifier.validate": {"tf": 1}}, "df": 4, "s": {"docs": {"snuba_sdk.Lambda.identifiers": {"tf": 1}}, "df": 1}}}}}}}}}, "s": {"docs": {"snuba_sdk.MetricsScope.org_ids": {"tf": 1}, "snuba_sdk.MetricsScope.project_ids": {"tf": 1}, "snuba_sdk.Request.tenant_ids": {"tf": 1}}, "df": 3}}, "s": {"docs": {"snuba_sdk.Op.IS_NULL": {"tf": 1}, "snuba_sdk.Op.IS_NOT_NULL": {"tf": 1}}, "df": 2}}, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.AliasedExpression.exp": {"tf": 1}, "snuba_sdk.OrderBy.exp": {"tf": 1}}, "df": 2}}, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Column.entity": {"tf": 1}, "snuba_sdk.Entity": {"tf": 1}, "snuba_sdk.Entity.__init__": {"tf": 1}, "snuba_sdk.Entity.name": {"tf": 1}, "snuba_sdk.Entity.alias": {"tf": 1}, "snuba_sdk.Entity.sample": {"tf": 1}, "snuba_sdk.Entity.data_model": {"tf": 1}, "snuba_sdk.Entity.validate": {"tf": 1}, "snuba_sdk.Metric.entity": {"tf": 1}, "snuba_sdk.Metric.set_entity": {"tf": 1}}, "df": 10}, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Join.get_entities": {"tf": 1}}, "df": 1}}}}}}, "d": {"docs": {"snuba_sdk.MetricsQuery.end": {"tf": 1}, "snuba_sdk.MetricsQuery.set_end": {"tf": 1}}, "df": 2}}, "q": {"docs": {"snuba_sdk.Op.EQ": {"tf": 1}}, "df": 1}}, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.AliasedExpression.validate": {"tf": 1}, "snuba_sdk.BooleanCondition.validate": {"tf": 1}, "snuba_sdk.Column.validate": {"tf": 1}, "snuba_sdk.Column.validate_data_model": {"tf": 1}, "snuba_sdk.Condition.validate": {"tf": 1}, "snuba_sdk.CurriedFunction.validate": {"tf": 1}, "snuba_sdk.Entity.validate": {"tf": 1}, "snuba_sdk.Flags.validate": {"tf": 1}, "snuba_sdk.Formula.validate": {"tf": 1}, "snuba_sdk.Granularity.validate": {"tf": 1}, "snuba_sdk.Identifier.validate": {"tf": 1}, "snuba_sdk.Join.validate": {"tf": 1}, "snuba_sdk.Lambda.validate": {"tf": 1}, "snuba_sdk.Limit.validate": {"tf": 1}, "snuba_sdk.LimitBy.validate": {"tf": 1}, "snuba_sdk.Metric.validate": {"tf": 1}, "snuba_sdk.MetricsQuery.validate": {"tf": 1}, "snuba_sdk.MetricsScope.validate": {"tf": 1}, "snuba_sdk.Offset.validate": {"tf": 1}, "snuba_sdk.OrderBy.validate": {"tf": 1}, "snuba_sdk.Query.validate": {"tf": 1}, "snuba_sdk.Relationship.validate": {"tf": 1}, "snuba_sdk.Request.validate": {"tf": 1}, "snuba_sdk.Rollup.validate": {"tf": 1}, "snuba_sdk.Timeseries.validate": {"tf": 1}, "snuba_sdk.Totals.validate": {"tf": 1}}, "df": 26}}}}}}}}, "o": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.And.op": {"tf": 1}, "snuba_sdk.BooleanCondition.op": {"tf": 1}, "snuba_sdk.Condition.op": {"tf": 1}, "snuba_sdk.Op": {"tf": 1}, "snuba_sdk.Op.GT": {"tf": 1}, "snuba_sdk.Op.LT": {"tf": 1}, "snuba_sdk.Op.GTE": {"tf": 1}, "snuba_sdk.Op.LTE": {"tf": 1}, "snuba_sdk.Op.EQ": {"tf": 1}, "snuba_sdk.Op.NEQ": {"tf": 1}, "snuba_sdk.Op.IN": {"tf": 1}, "snuba_sdk.Op.NOT_IN": {"tf": 1}, "snuba_sdk.Op.LIKE": {"tf": 1}, "snuba_sdk.Op.NOT_LIKE": {"tf": 1}, "snuba_sdk.Op.IS_NULL": {"tf": 1}, "snuba_sdk.Op.IS_NOT_NULL": {"tf": 1}, "snuba_sdk.Op.NOT": {"tf": 1}, "snuba_sdk.Or.op": {"tf": 1}}, "df": 18}, "r": {"docs": {"snuba_sdk.BooleanOp.OR": {"tf": 1}, "snuba_sdk.Or": {"tf": 1}, "snuba_sdk.Or.__init__": {"tf": 1}, "snuba_sdk.Or.op": {"tf": 1}, "snuba_sdk.Or.conditions": {"tf": 1}}, "df": 5, "g": {"docs": {"snuba_sdk.MetricsScope.org_ids": {"tf": 1}}, "df": 1}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.OrderBy": {"tf": 1}, "snuba_sdk.OrderBy.__init__": {"tf": 1}, "snuba_sdk.OrderBy.exp": {"tf": 1}, "snuba_sdk.OrderBy.direction": {"tf": 1}, "snuba_sdk.OrderBy.validate": {"tf": 1}, "snuba_sdk.Query.orderby": {"tf": 1}, "snuba_sdk.Query.set_orderby": {"tf": 1}, "snuba_sdk.Rollup.orderby": {"tf": 1}}, "df": 8}}}}}}, "f": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MetricsQuery.offset": {"tf": 1}, "snuba_sdk.MetricsQuery.set_offset": {"tf": 1}, "snuba_sdk.Offset": {"tf": 1}, "snuba_sdk.Offset.__init__": {"tf": 1}, "snuba_sdk.Offset.offset": {"tf": 1.4142135623730951}, "snuba_sdk.Offset.validate": {"tf": 1}, "snuba_sdk.Query.offset": {"tf": 1}, "snuba_sdk.Query.set_offset": {"tf": 1}}, "df": 8}}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Condition": {"tf": 1}, "snuba_sdk.Condition.__init__": {"tf": 1}, "snuba_sdk.Condition.lhs": {"tf": 1}, "snuba_sdk.Condition.op": {"tf": 1}, "snuba_sdk.Condition.rhs": {"tf": 1}, "snuba_sdk.Condition.validate": {"tf": 1}}, "df": 6, "s": {"docs": {"snuba_sdk.And.conditions": {"tf": 1}, "snuba_sdk.BooleanCondition.conditions": {"tf": 1}, "snuba_sdk.Or.conditions": {"tf": 1}}, "df": 3}}}}}}}, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Flags.consistent": {"tf": 1}}, "df": 1}}}}}}}}, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Column.__init__": {"tf": 1}, "snuba_sdk.Column.name": {"tf": 1}, "snuba_sdk.Column.entity": {"tf": 1}, "snuba_sdk.Column.subscriptable": {"tf": 1}, "snuba_sdk.Column.key": {"tf": 1}, "snuba_sdk.Column.validate": {"tf": 1}, "snuba_sdk.Column.validate_data_model": {"tf": 1}}, "df": 8, "s": {"docs": {"snuba_sdk.LimitBy.columns": {"tf": 1}}, "df": 1}}}}}, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.LimitBy.count": {"tf": 1}}, "df": 1}}}}, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.CurriedFunction": {"tf": 1}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1}, "snuba_sdk.CurriedFunction.function": {"tf": 1}, "snuba_sdk.CurriedFunction.initializers": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1}, "snuba_sdk.CurriedFunction.alias": {"tf": 1}, "snuba_sdk.CurriedFunction.validate": {"tf": 1}}, "df": 7}}}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsScope.use_case_id": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}}, "df": 2}}}}, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.ArithmeticOperator.PLUS": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.CurriedFunction.parameters": {"tf": 1}, "snuba_sdk.Formula.parameters": {"tf": 1}, "snuba_sdk.Formula.set_parameters": {"tf": 1}}, "df": 3}}}}}, "s": {"docs": {"snuba_sdk.Timeseries.aggregate_params": {"tf": 1}}, "df": 1}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Request.parent_api": {"tf": 1}}, "df": 1}}}}}, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"snuba_sdk.Metric.public_name": {"tf": 1}, "snuba_sdk.Metric.set_public_name": {"tf": 1}}, "df": 2}}}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MetricsQuery.print": {"tf": 1}, "snuba_sdk.Query.print": {"tf": 1}, "snuba_sdk.Request.print": {"tf": 1}}, "df": 3}}}, "o": {"docs": {}, "df": 0, "j": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MetricsScope.project_ids": {"tf": 1}}, "df": 1}}}}}}}, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.ArithmeticOperator.MINUS": {"tf": 1}}, "df": 1}}}}, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.ArithmeticOperator.MULTIPLY": {"tf": 1}}, "df": 1}}}}}}}, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.Column.validate_data_model": {"tf": 1}, "snuba_sdk.Entity.data_model": {"tf": 1}}, "df": 2}}}}, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Join.get_alias_mappings": {"tf": 1}, "snuba_sdk.MetricsQuery.indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}}, "df": 3}}}}}}, "t": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"snuba_sdk.Query.match": {"tf": 1}, "snuba_sdk.Query.set_match": {"tf": 1}}, "df": 2}}}}, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"snuba_sdk.Metric": {"tf": 1}, "snuba_sdk.Metric.__init__": {"tf": 1}, "snuba_sdk.Metric.public_name": {"tf": 1}, "snuba_sdk.Metric.mri": {"tf": 1}, "snuba_sdk.Metric.id": {"tf": 1}, "snuba_sdk.Metric.entity": {"tf": 1}, "snuba_sdk.Metric.get_fields": {"tf": 1}, "snuba_sdk.Metric.validate": {"tf": 1}, "snuba_sdk.Metric.set_mri": {"tf": 1}, "snuba_sdk.Metric.set_public_name": {"tf": 1}, "snuba_sdk.Metric.set_id": {"tf": 1}, "snuba_sdk.Metric.set_entity": {"tf": 1}, "snuba_sdk.Timeseries.metric": {"tf": 1}, "snuba_sdk.Timeseries.set_metric": {"tf": 1}}, "df": 14, "s": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.query": {"tf": 1}, "snuba_sdk.MetricsQuery.start": {"tf": 1}, "snuba_sdk.MetricsQuery.end": {"tf": 1}, "snuba_sdk.MetricsQuery.rollup": {"tf": 1}, "snuba_sdk.MetricsQuery.scope": {"tf": 1}, "snuba_sdk.MetricsQuery.limit": {"tf": 1}, "snuba_sdk.MetricsQuery.offset": {"tf": 1}, "snuba_sdk.MetricsQuery.indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsQuery.set_query": {"tf": 1}, "snuba_sdk.MetricsQuery.set_start": {"tf": 1}, "snuba_sdk.MetricsQuery.set_end": {"tf": 1}, "snuba_sdk.MetricsQuery.set_rollup": {"tf": 1}, "snuba_sdk.MetricsQuery.set_scope": {"tf": 1}, "snuba_sdk.MetricsQuery.set_limit": {"tf": 1}, "snuba_sdk.MetricsQuery.set_offset": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsQuery.validate": {"tf": 1}, "snuba_sdk.MetricsQuery.serialize": {"tf": 1}, "snuba_sdk.MetricsQuery.print": {"tf": 1}, "snuba_sdk.MetricsQuery.serialize_to_mql": {"tf": 1}}, "df": 22}}}}}, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}, "snuba_sdk.MetricsScope.__init__": {"tf": 1}, "snuba_sdk.MetricsScope.org_ids": {"tf": 1}, "snuba_sdk.MetricsScope.project_ids": {"tf": 1}, "snuba_sdk.MetricsScope.use_case_id": {"tf": 1}, "snuba_sdk.MetricsScope.validate": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}}, "df": 7}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {"snuba_sdk.Metric.mri": {"tf": 1}, "snuba_sdk.Metric.set_mri": {"tf": 1}}, "df": 2}}, "q": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.MetricsQuery.serialize_to_mql": {"tf": 1}, "snuba_sdk.Request.serialize_mql": {"tf": 1}}, "df": 2, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MQLContext": {"tf": 1}}, "df": 1}}}}}}}}}}, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.ArithmeticOperator.DIVIDE": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Direction": {"tf": 1}, "snuba_sdk.Direction.ASC": {"tf": 1}, "snuba_sdk.Direction.DESC": {"tf": 1}, "snuba_sdk.OrderBy.direction": {"tf": 1}}, "df": 4}}}}}}}, "c": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Flags.to_dict": {"tf": 1}, "snuba_sdk.Request.to_dict": {"tf": 1}}, "df": 2}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.Column.validate_data_model": {"tf": 1}, "snuba_sdk.Entity.data_model": {"tf": 1}}, "df": 2, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Request.dataset": {"tf": 1}}, "df": 1}}}}}}, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {"snuba_sdk.Direction.DESC": {"tf": 1}}, "df": 1}}, "b": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "g": {"docs": {"snuba_sdk.Flags.debug": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Flags.dry_run": {"tf": 1}}, "df": 1}}}, "b": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.BooleanCondition": {"tf": 1}, "snuba_sdk.BooleanCondition.__init__": {"tf": 1}, "snuba_sdk.BooleanCondition.op": {"tf": 1}, "snuba_sdk.BooleanCondition.conditions": {"tf": 1}, "snuba_sdk.BooleanCondition.validate": {"tf": 1}}, "df": 5}}}}}}}}}, "o": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.BooleanOp": {"tf": 1}, "snuba_sdk.BooleanOp.AND": {"tf": 1}, "snuba_sdk.BooleanOp.OR": {"tf": 1}}, "df": 3}}}}}}}}}, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Column.name": {"tf": 1}, "snuba_sdk.Entity.name": {"tf": 1}, "snuba_sdk.Formula.function_name": {"tf": 1}, "snuba_sdk.Identifier.name": {"tf": 1}, "snuba_sdk.Metric.public_name": {"tf": 1}, "snuba_sdk.Metric.set_public_name": {"tf": 1}, "snuba_sdk.Relationship.name": {"tf": 1}}, "df": 7}}}, "e": {"docs": {}, "df": 0, "q": {"docs": {"snuba_sdk.Op.NEQ": {"tf": 1}}, "df": 1}}, "o": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Op.NOT_IN": {"tf": 1}, "snuba_sdk.Op.NOT_LIKE": {"tf": 1}, "snuba_sdk.Op.IS_NOT_NULL": {"tf": 1}, "snuba_sdk.Op.NOT": {"tf": 1}}, "df": 4}}, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.Op.IS_NULL": {"tf": 1}, "snuba_sdk.Op.IS_NOT_NULL": {"tf": 1}}, "df": 2}}}}, "k": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Column.key": {"tf": 1}}, "df": 1}}}, "l": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Condition.lhs": {"tf": 1}, "snuba_sdk.Relationship.lhs": {"tf": 1}}, "df": 2}}, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Flags.legacy": {"tf": 1}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.Lambda": {"tf": 1}, "snuba_sdk.Lambda.__init__": {"tf": 1}, "snuba_sdk.Lambda.identifiers": {"tf": 1}, "snuba_sdk.Lambda.transformation": {"tf": 1}, "snuba_sdk.Lambda.validate": {"tf": 1}}, "df": 5}}}}}, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Limit": {"tf": 1}, "snuba_sdk.Limit.__init__": {"tf": 1}, "snuba_sdk.Limit.limit": {"tf": 1.4142135623730951}, "snuba_sdk.Limit.validate": {"tf": 1}, "snuba_sdk.MetricsQuery.limit": {"tf": 1}, "snuba_sdk.MetricsQuery.set_limit": {"tf": 1}, "snuba_sdk.Query.limit": {"tf": 1}, "snuba_sdk.Query.set_limit": {"tf": 1}}, "df": 8, "b": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.LimitBy": {"tf": 1}, "snuba_sdk.LimitBy.__init__": {"tf": 1}, "snuba_sdk.LimitBy.columns": {"tf": 1}, "snuba_sdk.LimitBy.count": {"tf": 1}, "snuba_sdk.LimitBy.validate": {"tf": 1}, "snuba_sdk.Query.limitby": {"tf": 1}, "snuba_sdk.Query.set_limitby": {"tf": 1}}, "df": 7}}}}}, "k": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Op.LIKE": {"tf": 1}, "snuba_sdk.Op.NOT_LIKE": {"tf": 1}}, "df": 2}}}, "t": {"docs": {"snuba_sdk.Op.LT": {"tf": 1}}, "df": 1, "e": {"docs": {"snuba_sdk.Op.LTE": {"tf": 1}}, "df": 1}}}, "r": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Condition.rhs": {"tf": 1}, "snuba_sdk.Relationship.rhs": {"tf": 1}}, "df": 2}}, "u": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Flags.dry_run": {"tf": 1}}, "df": 1}}, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.Relationship": {"tf": 1}, "snuba_sdk.Relationship.__init__": {"tf": 1}, "snuba_sdk.Relationship.lhs": {"tf": 1}, "snuba_sdk.Relationship.name": {"tf": 1}, "snuba_sdk.Relationship.rhs": {"tf": 1}, "snuba_sdk.Relationship.validate": {"tf": 1}}, "df": 6, "s": {"docs": {"snuba_sdk.Join.relationships": {"tf": 1}}, "df": 1}}}}}}}}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Request": {"tf": 1}, "snuba_sdk.Request.__init__": {"tf": 1}, "snuba_sdk.Request.dataset": {"tf": 1}, "snuba_sdk.Request.app_id": {"tf": 1}, "snuba_sdk.Request.query": {"tf": 1}, "snuba_sdk.Request.flags": {"tf": 1}, "snuba_sdk.Request.parent_api": {"tf": 1}, "snuba_sdk.Request.tenant_ids": {"tf": 1}, "snuba_sdk.Request.validate": {"tf": 1}, "snuba_sdk.Request.to_dict": {"tf": 1}, "snuba_sdk.Request.serialize": {"tf": 1}, "snuba_sdk.Request.serialize_mql": {"tf": 1}, "snuba_sdk.Request.print": {"tf": 1}}, "df": 13}}}}}}, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.MetricsQuery.rollup": {"tf": 1}, "snuba_sdk.MetricsQuery.set_rollup": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1}, "snuba_sdk.Rollup.__init__": {"tf": 1}, "snuba_sdk.Rollup.interval": {"tf": 1}, "snuba_sdk.Rollup.totals": {"tf": 1}, "snuba_sdk.Rollup.orderby": {"tf": 1}, "snuba_sdk.Rollup.granularity": {"tf": 1}, "snuba_sdk.Rollup.validate": {"tf": 1}}, "df": 9}}}}}}, "f": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.CurriedFunction.function": {"tf": 1}, "snuba_sdk.Formula.function_name": {"tf": 1}, "snuba_sdk.Function": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1}, "snuba_sdk.Function.initializers": {"tf": 1}}, "df": 5}}}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Flags": {"tf": 1}, "snuba_sdk.Flags.__init__": {"tf": 1}, "snuba_sdk.Flags.totals": {"tf": 1}, "snuba_sdk.Flags.consistent": {"tf": 1}, "snuba_sdk.Flags.turbo": {"tf": 1}, "snuba_sdk.Flags.debug": {"tf": 1}, "snuba_sdk.Flags.dry_run": {"tf": 1}, "snuba_sdk.Flags.legacy": {"tf": 1}, "snuba_sdk.Flags.validate": {"tf": 1}, "snuba_sdk.Flags.to_dict": {"tf": 1}, "snuba_sdk.Request.flags": {"tf": 1}}, "df": 11}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.Formula": {"tf": 1}, "snuba_sdk.Formula.__init__": {"tf": 1}, "snuba_sdk.Formula.function_name": {"tf": 1}, "snuba_sdk.Formula.parameters": {"tf": 1}, "snuba_sdk.Formula.filters": {"tf": 1}, "snuba_sdk.Formula.groupby": {"tf": 1}, "snuba_sdk.Formula.validate": {"tf": 1}, "snuba_sdk.Formula.set_parameters": {"tf": 1}, "snuba_sdk.Formula.set_filters": {"tf": 1}, "snuba_sdk.Formula.set_groupby": {"tf": 1}}, "df": 10}}}}}}, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Formula.filters": {"tf": 1}, "snuba_sdk.Formula.set_filters": {"tf": 1}, "snuba_sdk.Timeseries.filters": {"tf": 1}, "snuba_sdk.Timeseries.set_filters": {"tf": 1}}, "df": 4}}}}}, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Metric.get_fields": {"tf": 1}, "snuba_sdk.Timeseries.get_fields": {"tf": 1}}, "df": 2}}}}}}, "t": {"docs": {}, "df": 0, "o": {"docs": {"snuba_sdk.Flags.to_dict": {"tf": 1}, "snuba_sdk.MetricsQuery.serialize_to_mql": {"tf": 1}, "snuba_sdk.Request.to_dict": {"tf": 1}}, "df": 3, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Flags.totals": {"tf": 1}, "snuba_sdk.Query.totals": {"tf": 1}, "snuba_sdk.Query.set_totals": {"tf": 1}, "snuba_sdk.Rollup.totals": {"tf": 1}, "snuba_sdk.Totals": {"tf": 1}, "snuba_sdk.Totals.__init__": {"tf": 1}, "snuba_sdk.Totals.totals": {"tf": 1.4142135623730951}, "snuba_sdk.Totals.validate": {"tf": 1}}, "df": 8}}}}}, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "o": {"docs": {"snuba_sdk.Flags.turbo": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Lambda.transformation": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Request.tenant_ids": {"tf": 1}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Timeseries": {"tf": 1}, "snuba_sdk.Timeseries.__init__": {"tf": 1}, "snuba_sdk.Timeseries.metric": {"tf": 1}, "snuba_sdk.Timeseries.aggregate": {"tf": 1}, "snuba_sdk.Timeseries.aggregate_params": {"tf": 1}, "snuba_sdk.Timeseries.filters": {"tf": 1}, "snuba_sdk.Timeseries.groupby": {"tf": 1}, "snuba_sdk.Timeseries.get_fields": {"tf": 1}, "snuba_sdk.Timeseries.validate": {"tf": 1}, "snuba_sdk.Timeseries.set_metric": {"tf": 1}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 1}, "snuba_sdk.Timeseries.set_filters": {"tf": 1}, "snuba_sdk.Timeseries.set_groupby": {"tf": 1}}, "df": 13}}}}}}}}}}, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Formula.groupby": {"tf": 1}, "snuba_sdk.Formula.set_groupby": {"tf": 1}, "snuba_sdk.Query.groupby": {"tf": 1}, "snuba_sdk.Query.set_groupby": {"tf": 1}, "snuba_sdk.Timeseries.groupby": {"tf": 1}, "snuba_sdk.Timeseries.set_groupby": {"tf": 1}}, "df": 6}}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Granularity": {"tf": 1}, "snuba_sdk.Granularity.__init__": {"tf": 1}, "snuba_sdk.Granularity.granularity": {"tf": 1.4142135623730951}, "snuba_sdk.Granularity.validate": {"tf": 1}, "snuba_sdk.Query.granularity": {"tf": 1}, "snuba_sdk.Query.set_granularity": {"tf": 1}, "snuba_sdk.Rollup.granularity": {"tf": 1}}, "df": 7}}}}}}}}}}, "e": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Join.get_alias_mappings": {"tf": 1}, "snuba_sdk.Join.get_entities": {"tf": 1}, "snuba_sdk.Metric.get_fields": {"tf": 1}, "snuba_sdk.Timeseries.get_fields": {"tf": 1}}, "df": 4}}, "t": {"docs": {"snuba_sdk.Op.GT": {"tf": 1}}, "df": 1, "e": {"docs": {"snuba_sdk.Op.GTE": {"tf": 1}}, "df": 1}}}, "j": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Join.__init__": {"tf": 1}, "snuba_sdk.Join.relationships": {"tf": 1}, "snuba_sdk.Join.get_alias_mappings": {"tf": 1}, "snuba_sdk.Join.get_entities": {"tf": 1}, "snuba_sdk.Join.validate": {"tf": 1}, "snuba_sdk.Query.array_join": {"tf": 1}, "snuba_sdk.Query.set_array_join": {"tf": 1}}, "df": 8}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.MetricsQuery.query": {"tf": 1}, "snuba_sdk.MetricsQuery.set_query": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1}, "snuba_sdk.Query.match": {"tf": 1}, "snuba_sdk.Query.select": {"tf": 1}, "snuba_sdk.Query.groupby": {"tf": 1}, "snuba_sdk.Query.array_join": {"tf": 1}, "snuba_sdk.Query.where": {"tf": 1}, "snuba_sdk.Query.having": {"tf": 1}, "snuba_sdk.Query.orderby": {"tf": 1}, "snuba_sdk.Query.limitby": {"tf": 1}, "snuba_sdk.Query.limit": {"tf": 1}, "snuba_sdk.Query.offset": {"tf": 1}, "snuba_sdk.Query.granularity": {"tf": 1}, "snuba_sdk.Query.totals": {"tf": 1}, "snuba_sdk.Query.set_match": {"tf": 1}, "snuba_sdk.Query.set_select": {"tf": 1}, "snuba_sdk.Query.set_groupby": {"tf": 1}, "snuba_sdk.Query.set_array_join": {"tf": 1}, "snuba_sdk.Query.set_where": {"tf": 1}, "snuba_sdk.Query.set_having": {"tf": 1}, "snuba_sdk.Query.set_orderby": {"tf": 1}, "snuba_sdk.Query.set_limitby": {"tf": 1}, "snuba_sdk.Query.set_limit": {"tf": 1}, "snuba_sdk.Query.set_offset": {"tf": 1}, "snuba_sdk.Query.set_granularity": {"tf": 1}, "snuba_sdk.Query.set_totals": {"tf": 1}, "snuba_sdk.Query.validate": {"tf": 1}, "snuba_sdk.Query.serialize": {"tf": 1}, "snuba_sdk.Query.print": {"tf": 1}, "snuba_sdk.Request.query": {"tf": 1}}, "df": 32}}}}}, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsScope.use_case_id": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}}, "df": 2}}}, "w": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Query.where": {"tf": 1}, "snuba_sdk.Query.set_where": {"tf": 1}}, "df": 2}}}}}, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"snuba_sdk.Query.having": {"tf": 1}, "snuba_sdk.Query.set_having": {"tf": 1}}, "df": 2}}}}}}}}, "annotation": {"root": {"docs": {"snuba_sdk.AliasedExpression.exp": {"tf": 1}, "snuba_sdk.AliasedExpression.alias": {"tf": 1}, "snuba_sdk.And.op": {"tf": 1}, "snuba_sdk.And.conditions": {"tf": 1}, "snuba_sdk.BooleanCondition.op": {"tf": 1}, "snuba_sdk.BooleanCondition.conditions": {"tf": 1}, "snuba_sdk.Column.name": {"tf": 1}, "snuba_sdk.Column.entity": {"tf": 1}, "snuba_sdk.Column.subscriptable": {"tf": 1}, "snuba_sdk.Column.key": {"tf": 1}, "snuba_sdk.Condition.lhs": {"tf": 1}, "snuba_sdk.Condition.op": {"tf": 1}, "snuba_sdk.Condition.rhs": {"tf": 1}, "snuba_sdk.CurriedFunction.function": {"tf": 1}, "snuba_sdk.CurriedFunction.initializers": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1}, "snuba_sdk.CurriedFunction.alias": {"tf": 1}, "snuba_sdk.Entity.name": {"tf": 1}, "snuba_sdk.Entity.alias": {"tf": 1}, "snuba_sdk.Entity.sample": {"tf": 1}, "snuba_sdk.Entity.data_model": {"tf": 1}, "snuba_sdk.Flags.totals": {"tf": 1.7320508075688772}, "snuba_sdk.Flags.consistent": {"tf": 1.7320508075688772}, "snuba_sdk.Flags.turbo": {"tf": 1.7320508075688772}, "snuba_sdk.Flags.debug": {"tf": 1.7320508075688772}, "snuba_sdk.Flags.dry_run": {"tf": 1.7320508075688772}, "snuba_sdk.Flags.legacy": {"tf": 1.7320508075688772}, "snuba_sdk.Formula.function_name": {"tf": 1}, "snuba_sdk.Formula.parameters": {"tf": 1}, "snuba_sdk.Formula.filters": {"tf": 1}, "snuba_sdk.Formula.groupby": {"tf": 1.7320508075688772}, "snuba_sdk.Function.initializers": {"tf": 1}, "snuba_sdk.Granularity.granularity": {"tf": 1}, "snuba_sdk.Identifier.name": {"tf": 1}, "snuba_sdk.Join.relationships": {"tf": 1}, "snuba_sdk.Lambda.identifiers": {"tf": 1}, "snuba_sdk.Lambda.transformation": {"tf": 1}, "snuba_sdk.Limit.limit": {"tf": 1}, "snuba_sdk.LimitBy.columns": {"tf": 1}, "snuba_sdk.LimitBy.count": {"tf": 1}, "snuba_sdk.Metric.public_name": {"tf": 1.7320508075688772}, "snuba_sdk.Metric.mri": {"tf": 1.7320508075688772}, "snuba_sdk.Metric.id": {"tf": 1.7320508075688772}, "snuba_sdk.Metric.entity": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.query": {"tf": 2}, "snuba_sdk.MetricsQuery.start": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.end": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.rollup": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.scope": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.limit": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.offset": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.indexer_mappings": {"tf": 2}, "snuba_sdk.MetricsScope.org_ids": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsScope.project_ids": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsScope.use_case_id": {"tf": 1.7320508075688772}, "snuba_sdk.Offset.offset": {"tf": 1}, "snuba_sdk.Or.op": {"tf": 1}, "snuba_sdk.Or.conditions": {"tf": 1}, "snuba_sdk.OrderBy.exp": {"tf": 1}, "snuba_sdk.OrderBy.direction": {"tf": 1}, "snuba_sdk.Query.match": {"tf": 1}, "snuba_sdk.Query.select": {"tf": 1}, "snuba_sdk.Query.groupby": {"tf": 1}, "snuba_sdk.Query.array_join": {"tf": 1}, "snuba_sdk.Query.where": {"tf": 1}, "snuba_sdk.Query.having": {"tf": 1}, "snuba_sdk.Query.orderby": {"tf": 1}, "snuba_sdk.Query.limitby": {"tf": 1}, "snuba_sdk.Query.limit": {"tf": 1}, "snuba_sdk.Query.offset": {"tf": 1}, "snuba_sdk.Query.granularity": {"tf": 1}, "snuba_sdk.Query.totals": {"tf": 1}, "snuba_sdk.Relationship.lhs": {"tf": 1}, "snuba_sdk.Relationship.name": {"tf": 1}, "snuba_sdk.Relationship.rhs": {"tf": 1}, "snuba_sdk.Request.dataset": {"tf": 1}, "snuba_sdk.Request.app_id": {"tf": 1}, "snuba_sdk.Request.query": {"tf": 1}, "snuba_sdk.Request.flags": {"tf": 1}, "snuba_sdk.Request.parent_api": {"tf": 1}, "snuba_sdk.Request.tenant_ids": {"tf": 1.7320508075688772}, "snuba_sdk.Rollup.interval": {"tf": 1.7320508075688772}, "snuba_sdk.Rollup.totals": {"tf": 1.7320508075688772}, "snuba_sdk.Rollup.orderby": {"tf": 1.7320508075688772}, "snuba_sdk.Rollup.granularity": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries.metric": {"tf": 1}, "snuba_sdk.Timeseries.aggregate": {"tf": 1}, "snuba_sdk.Timeseries.aggregate_params": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries.filters": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries.groupby": {"tf": 2}, "snuba_sdk.Totals.totals": {"tf": 1}}, "df": 91, "s": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.AliasedExpression.exp": {"tf": 1}, "snuba_sdk.And.op": {"tf": 1}, "snuba_sdk.And.conditions": {"tf": 1}, "snuba_sdk.BooleanCondition.op": {"tf": 1}, "snuba_sdk.BooleanCondition.conditions": {"tf": 1}, "snuba_sdk.Condition.lhs": {"tf": 1.4142135623730951}, "snuba_sdk.Condition.op": {"tf": 1}, "snuba_sdk.Condition.rhs": {"tf": 1.4142135623730951}, "snuba_sdk.CurriedFunction.initializers": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 2.23606797749979}, "snuba_sdk.Formula.parameters": {"tf": 1}, "snuba_sdk.Formula.filters": {"tf": 1}, "snuba_sdk.Function.initializers": {"tf": 1}, "snuba_sdk.Lambda.transformation": {"tf": 1}, "snuba_sdk.Or.op": {"tf": 1}, "snuba_sdk.Or.conditions": {"tf": 1}, "snuba_sdk.OrderBy.exp": {"tf": 1.4142135623730951}, "snuba_sdk.OrderBy.direction": {"tf": 1}, "snuba_sdk.Query.match": {"tf": 1.4142135623730951}, "snuba_sdk.Query.select": {"tf": 1.7320508075688772}, "snuba_sdk.Query.groupby": {"tf": 1.7320508075688772}, "snuba_sdk.Query.where": {"tf": 1}, "snuba_sdk.Query.having": {"tf": 1}, "snuba_sdk.Relationship.lhs": {"tf": 1}, "snuba_sdk.Relationship.rhs": {"tf": 1}, "snuba_sdk.Request.query": {"tf": 1}, "snuba_sdk.Request.flags": {"tf": 1}, "snuba_sdk.Timeseries.metric": {"tf": 1}}, "df": 28}}}}, "d": {"docs": {}, "df": 0, "k": {"docs": {"snuba_sdk.AliasedExpression.exp": {"tf": 1}, "snuba_sdk.And.op": {"tf": 1}, "snuba_sdk.And.conditions": {"tf": 1.4142135623730951}, "snuba_sdk.BooleanCondition.op": {"tf": 1}, "snuba_sdk.BooleanCondition.conditions": {"tf": 1.4142135623730951}, "snuba_sdk.Column.entity": {"tf": 1}, "snuba_sdk.Condition.lhs": {"tf": 1.7320508075688772}, "snuba_sdk.Condition.op": {"tf": 1}, "snuba_sdk.Condition.rhs": {"tf": 2}, "snuba_sdk.CurriedFunction.initializers": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 2.449489742783178}, "snuba_sdk.Entity.data_model": {"tf": 1}, "snuba_sdk.Formula.parameters": {"tf": 1.4142135623730951}, "snuba_sdk.Formula.filters": {"tf": 1.4142135623730951}, "snuba_sdk.Function.initializers": {"tf": 1}, "snuba_sdk.Join.relationships": {"tf": 1}, "snuba_sdk.Lambda.transformation": {"tf": 1}, "snuba_sdk.LimitBy.columns": {"tf": 1}, "snuba_sdk.Or.op": {"tf": 1}, "snuba_sdk.Or.conditions": {"tf": 1.4142135623730951}, "snuba_sdk.OrderBy.exp": {"tf": 1.7320508075688772}, "snuba_sdk.OrderBy.direction": {"tf": 1}, "snuba_sdk.Query.match": {"tf": 1.7320508075688772}, "snuba_sdk.Query.select": {"tf": 2}, "snuba_sdk.Query.groupby": {"tf": 2}, "snuba_sdk.Query.array_join": {"tf": 1}, "snuba_sdk.Query.where": {"tf": 1.4142135623730951}, "snuba_sdk.Query.having": {"tf": 1.4142135623730951}, "snuba_sdk.Query.orderby": {"tf": 1}, "snuba_sdk.Query.limitby": {"tf": 1}, "snuba_sdk.Query.limit": {"tf": 1}, "snuba_sdk.Query.offset": {"tf": 1}, "snuba_sdk.Query.granularity": {"tf": 1}, "snuba_sdk.Query.totals": {"tf": 1}, "snuba_sdk.Relationship.lhs": {"tf": 1}, "snuba_sdk.Relationship.rhs": {"tf": 1}, "snuba_sdk.Request.query": {"tf": 1}, "snuba_sdk.Request.flags": {"tf": 1}, "snuba_sdk.Timeseries.metric": {"tf": 1}}, "df": 39}}, "e": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.And.conditions": {"tf": 1}, "snuba_sdk.BooleanCondition.conditions": {"tf": 1}, "snuba_sdk.Condition.rhs": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1}, "snuba_sdk.Or.conditions": {"tf": 1}}, "df": 5}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.Join.relationships": {"tf": 1}, "snuba_sdk.LimitBy.columns": {"tf": 1}}, "df": 2}}}}, "t": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.Lambda.identifiers": {"tf": 1}}, "df": 1}}}}}}}}}}}, "t": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.Column.name": {"tf": 1}, "snuba_sdk.Condition.rhs": {"tf": 1.4142135623730951}, "snuba_sdk.CurriedFunction.function": {"tf": 1}, "snuba_sdk.CurriedFunction.initializers": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1.4142135623730951}, "snuba_sdk.Entity.name": {"tf": 1}, "snuba_sdk.Formula.function_name": {"tf": 1}, "snuba_sdk.Formula.parameters": {"tf": 1}, "snuba_sdk.Function.initializers": {"tf": 1}, "snuba_sdk.Identifier.name": {"tf": 1}, "snuba_sdk.Metric.public_name": {"tf": 1}, "snuba_sdk.Metric.mri": {"tf": 1}, "snuba_sdk.Metric.entity": {"tf": 1}, "snuba_sdk.MetricsQuery.indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsScope.use_case_id": {"tf": 1}, "snuba_sdk.Relationship.name": {"tf": 1}, "snuba_sdk.Request.dataset": {"tf": 1}, "snuba_sdk.Request.app_id": {"tf": 1}, "snuba_sdk.Request.parent_api": {"tf": 1}, "snuba_sdk.Request.tenant_ids": {"tf": 1}, "snuba_sdk.Timeseries.aggregate": {"tf": 1}}, "df": 21}}, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.Entity.data_model": {"tf": 1}}, "df": 1}}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.AliasedExpression.exp": {"tf": 1.4142135623730951}, "snuba_sdk.Condition.lhs": {"tf": 1.4142135623730951}, "snuba_sdk.Condition.rhs": {"tf": 1.4142135623730951}, "snuba_sdk.CurriedFunction.initializers": {"tf": 1.4142135623730951}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1.4142135623730951}, "snuba_sdk.Function.initializers": {"tf": 1.4142135623730951}, "snuba_sdk.LimitBy.columns": {"tf": 1.4142135623730951}, "snuba_sdk.OrderBy.exp": {"tf": 1.4142135623730951}, "snuba_sdk.Query.select": {"tf": 1.4142135623730951}, "snuba_sdk.Query.groupby": {"tf": 1.4142135623730951}, "snuba_sdk.Query.array_join": {"tf": 1.4142135623730951}}, "df": 11}}}}, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.And.conditions": {"tf": 1}, "snuba_sdk.BooleanCondition.conditions": {"tf": 1}, "snuba_sdk.Formula.filters": {"tf": 1}, "snuba_sdk.Or.conditions": {"tf": 1}, "snuba_sdk.Query.where": {"tf": 1}, "snuba_sdk.Query.having": {"tf": 1}}, "df": 6, "s": {"docs": {"snuba_sdk.And.op": {"tf": 1}, "snuba_sdk.And.conditions": {"tf": 1.4142135623730951}, "snuba_sdk.BooleanCondition.op": {"tf": 1}, "snuba_sdk.BooleanCondition.conditions": {"tf": 1.4142135623730951}, "snuba_sdk.Condition.op": {"tf": 1}, "snuba_sdk.Formula.filters": {"tf": 1.4142135623730951}, "snuba_sdk.Or.op": {"tf": 1}, "snuba_sdk.Or.conditions": {"tf": 1.4142135623730951}, "snuba_sdk.Query.where": {"tf": 1.4142135623730951}, "snuba_sdk.Query.having": {"tf": 1.4142135623730951}}, "df": 10}, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.Timeseries.filters": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Condition.lhs": {"tf": 1}, "snuba_sdk.Condition.rhs": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1}, "snuba_sdk.Lambda.transformation": {"tf": 1}, "snuba_sdk.OrderBy.exp": {"tf": 1}, "snuba_sdk.Query.select": {"tf": 1}, "snuba_sdk.Query.groupby": {"tf": 1}}, "df": 7}}}}}}}}}}}}}}}, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.AliasedExpression.alias": {"tf": 1}, "snuba_sdk.Column.subscriptable": {"tf": 1}, "snuba_sdk.Column.key": {"tf": 1}, "snuba_sdk.CurriedFunction.alias": {"tf": 1}, "snuba_sdk.Entity.alias": {"tf": 1}}, "df": 5}}, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.Column.entity": {"tf": 1}, "snuba_sdk.Condition.lhs": {"tf": 1}, "snuba_sdk.Condition.rhs": {"tf": 1}, "snuba_sdk.Entity.data_model": {"tf": 1}, "snuba_sdk.OrderBy.exp": {"tf": 1}, "snuba_sdk.Query.match": {"tf": 1}, "snuba_sdk.Query.limitby": {"tf": 1}, "snuba_sdk.Query.limit": {"tf": 1}, "snuba_sdk.Query.offset": {"tf": 1}, "snuba_sdk.Query.granularity": {"tf": 1}, "snuba_sdk.Query.totals": {"tf": 1}}, "df": 11}}}}, "e": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.CurriedFunction.initializers": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1}, "snuba_sdk.Function.initializers": {"tf": 1}}, "df": 3}}}}}}}}, "s": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.Formula.parameters": {"tf": 1}, "snuba_sdk.Formula.filters": {"tf": 1}, "snuba_sdk.Query.select": {"tf": 1}, "snuba_sdk.Query.groupby": {"tf": 1}, "snuba_sdk.Query.where": {"tf": 1}, "snuba_sdk.Query.having": {"tf": 1}}, "df": 6}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.Query.array_join": {"tf": 1}, "snuba_sdk.Query.orderby": {"tf": 1}}, "df": 2}}}}}}}}}}}}}}, "f": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Entity.sample": {"tf": 1}}, "df": 1}}}}}}}}}}}, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Flags.totals": {"tf": 1}, "snuba_sdk.Flags.consistent": {"tf": 1}, "snuba_sdk.Flags.turbo": {"tf": 1}, "snuba_sdk.Flags.debug": {"tf": 1}, "snuba_sdk.Flags.dry_run": {"tf": 1}, "snuba_sdk.Flags.legacy": {"tf": 1}, "snuba_sdk.Metric.public_name": {"tf": 1}, "snuba_sdk.Metric.mri": {"tf": 1}, "snuba_sdk.Metric.id": {"tf": 1}, "snuba_sdk.Metric.entity": {"tf": 1}, "snuba_sdk.MetricsQuery.query": {"tf": 1}, "snuba_sdk.MetricsQuery.start": {"tf": 1}, "snuba_sdk.MetricsQuery.end": {"tf": 1}, "snuba_sdk.MetricsQuery.rollup": {"tf": 1}, "snuba_sdk.MetricsQuery.scope": {"tf": 1}, "snuba_sdk.MetricsQuery.limit": {"tf": 1}, "snuba_sdk.MetricsQuery.offset": {"tf": 1}, "snuba_sdk.MetricsQuery.indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsScope.use_case_id": {"tf": 1}, "snuba_sdk.Rollup.interval": {"tf": 1}, "snuba_sdk.Rollup.totals": {"tf": 1}, "snuba_sdk.Rollup.orderby": {"tf": 1}, "snuba_sdk.Rollup.granularity": {"tf": 1}, "snuba_sdk.Timeseries.aggregate_params": {"tf": 1}, "snuba_sdk.Timeseries.filters": {"tf": 1}, "snuba_sdk.Timeseries.groupby": {"tf": 1}}, "df": 26, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.AliasedExpression.alias": {"tf": 1}, "snuba_sdk.Column.entity": {"tf": 1}, "snuba_sdk.Column.subscriptable": {"tf": 1}, "snuba_sdk.Column.key": {"tf": 1}, "snuba_sdk.Condition.rhs": {"tf": 1.4142135623730951}, "snuba_sdk.CurriedFunction.initializers": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1.4142135623730951}, "snuba_sdk.CurriedFunction.alias": {"tf": 1}, "snuba_sdk.Entity.alias": {"tf": 1}, "snuba_sdk.Entity.sample": {"tf": 1}, "snuba_sdk.Entity.data_model": {"tf": 1}, "snuba_sdk.Formula.parameters": {"tf": 1}, "snuba_sdk.Formula.filters": {"tf": 1}, "snuba_sdk.Function.initializers": {"tf": 1}, "snuba_sdk.Query.select": {"tf": 1}, "snuba_sdk.Query.groupby": {"tf": 1}, "snuba_sdk.Query.array_join": {"tf": 1}, "snuba_sdk.Query.where": {"tf": 1}, "snuba_sdk.Query.having": {"tf": 1}, "snuba_sdk.Query.orderby": {"tf": 1}, "snuba_sdk.Query.limitby": {"tf": 1}, "snuba_sdk.Query.limit": {"tf": 1}, "snuba_sdk.Query.offset": {"tf": 1}, "snuba_sdk.Query.granularity": {"tf": 1}, "snuba_sdk.Query.totals": {"tf": 1}}, "df": 25}}}}}}}}, "b": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.Condition.rhs": {"tf": 1.4142135623730951}, "snuba_sdk.CurriedFunction.initializers": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1.4142135623730951}, "snuba_sdk.Flags.totals": {"tf": 1}, "snuba_sdk.Flags.consistent": {"tf": 1}, "snuba_sdk.Flags.turbo": {"tf": 1}, "snuba_sdk.Flags.debug": {"tf": 1}, "snuba_sdk.Flags.dry_run": {"tf": 1}, "snuba_sdk.Flags.legacy": {"tf": 1}, "snuba_sdk.Function.initializers": {"tf": 1}, "snuba_sdk.Rollup.totals": {"tf": 1}, "snuba_sdk.Totals.totals": {"tf": 1}}, "df": 12, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.And.op": {"tf": 1}, "snuba_sdk.BooleanCondition.op": {"tf": 1}, "snuba_sdk.Or.op": {"tf": 1}}, "df": 3}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.And.conditions": {"tf": 1}, "snuba_sdk.BooleanCondition.conditions": {"tf": 1}, "snuba_sdk.Formula.filters": {"tf": 1}, "snuba_sdk.Or.conditions": {"tf": 1}, "snuba_sdk.Query.where": {"tf": 1}, "snuba_sdk.Query.having": {"tf": 1}}, "df": 6}}}}}}}}}}}}}}}, "y": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Condition.rhs": {"tf": 1.4142135623730951}, "snuba_sdk.CurriedFunction.initializers": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1.4142135623730951}, "snuba_sdk.Function.initializers": {"tf": 1}}, "df": 4}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Request.query": {"tf": 1}}, "df": 1}}}}}}}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Column.entity": {"tf": 1.4142135623730951}, "snuba_sdk.Query.match": {"tf": 1.4142135623730951}, "snuba_sdk.Relationship.lhs": {"tf": 1.4142135623730951}, "snuba_sdk.Relationship.rhs": {"tf": 1.4142135623730951}}, "df": 4, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.Entity.data_model": {"tf": 1}}, "df": 1}}}}}}}}}}, "x": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Condition.rhs": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1}, "snuba_sdk.Query.select": {"tf": 1}, "snuba_sdk.Query.groupby": {"tf": 1}}, "df": 4, "s": {"docs": {"snuba_sdk.Condition.rhs": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1}, "snuba_sdk.Query.limit": {"tf": 1}, "snuba_sdk.Query.offset": {"tf": 1}, "snuba_sdk.Query.granularity": {"tf": 1}, "snuba_sdk.Query.totals": {"tf": 1}}, "df": 6}}}}}}}}}}}, "f": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Condition.lhs": {"tf": 1.7320508075688772}, "snuba_sdk.Condition.rhs": {"tf": 1.7320508075688772}, "snuba_sdk.CurriedFunction.parameters": {"tf": 2.23606797749979}, "snuba_sdk.Lambda.transformation": {"tf": 1}, "snuba_sdk.OrderBy.exp": {"tf": 1.7320508075688772}, "snuba_sdk.Query.select": {"tf": 1.7320508075688772}, "snuba_sdk.Query.groupby": {"tf": 1.7320508075688772}}, "df": 7}}}}}}}, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Condition.rhs": {"tf": 1.4142135623730951}, "snuba_sdk.CurriedFunction.initializers": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1.4142135623730951}, "snuba_sdk.Formula.parameters": {"tf": 1}, "snuba_sdk.Function.initializers": {"tf": 1}}, "df": 5}}}, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Request.flags": {"tf": 1}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.Formula.parameters": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.query": {"tf": 1}}, "df": 2}}}}}}}, "o": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.Condition.op": {"tf": 1}}, "df": 1, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Formula.groupby": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}, "f": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MetricsQuery.offset": {"tf": 1}, "snuba_sdk.Query.offset": {"tf": 1}}, "df": 2}}}}}, "r": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.OrderBy.direction": {"tf": 1}, "snuba_sdk.Query.orderby": {"tf": 1.4142135623730951}, "snuba_sdk.Query.limitby": {"tf": 1}}, "df": 3}}}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Condition.rhs": {"tf": 1.4142135623730951}, "snuba_sdk.CurriedFunction.initializers": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1.4142135623730951}, "snuba_sdk.Formula.parameters": {"tf": 1}, "snuba_sdk.Function.initializers": {"tf": 1}, "snuba_sdk.Granularity.granularity": {"tf": 1}, "snuba_sdk.Limit.limit": {"tf": 1}, "snuba_sdk.LimitBy.count": {"tf": 1}, "snuba_sdk.Metric.id": {"tf": 1}, "snuba_sdk.MetricsQuery.indexer_mappings": {"tf": 1}, "snuba_sdk.Offset.offset": {"tf": 1}, "snuba_sdk.Request.tenant_ids": {"tf": 1}, "snuba_sdk.Rollup.interval": {"tf": 1}, "snuba_sdk.Rollup.granularity": {"tf": 1}}, "df": 14}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.CurriedFunction.parameters": {"tf": 1}}, "df": 1}}}}}}}}}}, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Condition.rhs": {"tf": 1.4142135623730951}, "snuba_sdk.CurriedFunction.initializers": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1.4142135623730951}, "snuba_sdk.Function.initializers": {"tf": 1}}, "df": 4, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Condition.rhs": {"tf": 2.449489742783178}, "snuba_sdk.CurriedFunction.initializers": {"tf": 1.7320508075688772}, "snuba_sdk.CurriedFunction.parameters": {"tf": 2.449489742783178}, "snuba_sdk.Function.initializers": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.start": {"tf": 1}, "snuba_sdk.MetricsQuery.end": {"tf": 1}}, "df": 6}}}}}}}, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.MetricsQuery.indexer_mappings": {"tf": 1}, "snuba_sdk.Request.tenant_ids": {"tf": 1}}, "df": 2}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.OrderBy.direction": {"tf": 1}, "snuba_sdk.Rollup.orderby": {"tf": 1}}, "df": 2}}}}}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.CurriedFunction.parameters": {"tf": 1}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MetricsQuery.limit": {"tf": 1}, "snuba_sdk.Query.limit": {"tf": 1}}, "df": 2, "b": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Query.limitby": {"tf": 1}}, "df": 1}}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MetricsScope.org_ids": {"tf": 1}, "snuba_sdk.MetricsScope.project_ids": {"tf": 1}}, "df": 2}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Timeseries.aggregate_params": {"tf": 1}}, "df": 1}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Timeseries.groupby": {"tf": 1}}, "df": 1}}}}}}}}}}}, "x": {"2": {"7": {"docs": {"snuba_sdk.Flags.totals": {"tf": 1.4142135623730951}, "snuba_sdk.Flags.consistent": {"tf": 1.4142135623730951}, "snuba_sdk.Flags.turbo": {"tf": 1.4142135623730951}, "snuba_sdk.Flags.debug": {"tf": 1.4142135623730951}, "snuba_sdk.Flags.dry_run": {"tf": 1.4142135623730951}, "snuba_sdk.Flags.legacy": {"tf": 1.4142135623730951}, "snuba_sdk.Formula.groupby": {"tf": 1.4142135623730951}, "snuba_sdk.Metric.public_name": {"tf": 1.4142135623730951}, "snuba_sdk.Metric.mri": {"tf": 1.4142135623730951}, "snuba_sdk.Metric.id": {"tf": 1.4142135623730951}, "snuba_sdk.Metric.entity": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.query": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.start": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.end": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.rollup": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.scope": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.limit": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.offset": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.indexer_mappings": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsScope.org_ids": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsScope.project_ids": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsScope.use_case_id": {"tf": 1.4142135623730951}, "snuba_sdk.Request.tenant_ids": {"tf": 1.4142135623730951}, "snuba_sdk.Rollup.interval": {"tf": 1.4142135623730951}, "snuba_sdk.Rollup.totals": {"tf": 1.4142135623730951}, "snuba_sdk.Rollup.orderby": {"tf": 1.4142135623730951}, "snuba_sdk.Rollup.granularity": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries.aggregate_params": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries.filters": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries.groupby": {"tf": 1.4142135623730951}}, "df": 30}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Formula.parameters": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.query": {"tf": 1}, "snuba_sdk.Timeseries.metric": {"tf": 1}}, "df": 3}}}}}}}}}, "o": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Query.totals": {"tf": 1}}, "df": 1}}}}}}, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.Query.select": {"tf": 1}, "snuba_sdk.Query.groupby": {"tf": 1}}, "df": 2, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Formula.groupby": {"tf": 1}, "snuba_sdk.Query.select": {"tf": 1}, "snuba_sdk.Query.groupby": {"tf": 1}, "snuba_sdk.Timeseries.groupby": {"tf": 1}}, "df": 4}}}}}}}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.Join.relationships": {"tf": 1}}, "df": 1, "s": {"docs": {"snuba_sdk.Join.relationships": {"tf": 1}, "snuba_sdk.Query.match": {"tf": 1}}, "df": 2}}}}}}}}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Request.flags": {"tf": 1}}, "df": 1}}}}}}, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.MetricsQuery.rollup": {"tf": 1}}, "df": 1}}}}}}, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"snuba_sdk.Timeseries.metric": {"tf": 1}}, "df": 1, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsQuery.scope": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "j": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Query.match": {"tf": 1}}, "df": 1}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Query.match": {"tf": 1.4142135623730951}, "snuba_sdk.Request.query": {"tf": 1}}, "df": 2}}}}}, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Query.granularity": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "default_value": {"root": {"docs": {"snuba_sdk.And.op": {"tf": 1.4142135623730951}, "snuba_sdk.ArithmeticOperator.PLUS": {"tf": 1.4142135623730951}, "snuba_sdk.ArithmeticOperator.MINUS": {"tf": 1.4142135623730951}, "snuba_sdk.ArithmeticOperator.MULTIPLY": {"tf": 1.4142135623730951}, "snuba_sdk.ArithmeticOperator.DIVIDE": {"tf": 1.4142135623730951}, "snuba_sdk.BooleanOp.AND": {"tf": 1.4142135623730951}, "snuba_sdk.BooleanOp.OR": {"tf": 1.4142135623730951}, "snuba_sdk.Direction.ASC": {"tf": 1.4142135623730951}, "snuba_sdk.Direction.DESC": {"tf": 1.4142135623730951}, "snuba_sdk.Op.GT": {"tf": 1.4142135623730951}, "snuba_sdk.Op.LT": {"tf": 1.4142135623730951}, "snuba_sdk.Op.GTE": {"tf": 1.4142135623730951}, "snuba_sdk.Op.LTE": {"tf": 1.4142135623730951}, "snuba_sdk.Op.EQ": {"tf": 1.4142135623730951}, "snuba_sdk.Op.NEQ": {"tf": 1.7320508075688772}, "snuba_sdk.Op.IN": {"tf": 1.4142135623730951}, "snuba_sdk.Op.NOT_IN": {"tf": 1.4142135623730951}, "snuba_sdk.Op.LIKE": {"tf": 1.4142135623730951}, "snuba_sdk.Op.NOT_LIKE": {"tf": 1.4142135623730951}, "snuba_sdk.Op.IS_NULL": {"tf": 1.4142135623730951}, "snuba_sdk.Op.IS_NOT_NULL": {"tf": 1.4142135623730951}, "snuba_sdk.Op.NOT": {"tf": 1.7320508075688772}, "snuba_sdk.Or.op": {"tf": 1.4142135623730951}, "snuba_sdk.Request.parent_api": {"tf": 1.4142135623730951}}, "df": 24, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.AliasedExpression.alias": {"tf": 1}, "snuba_sdk.Column.entity": {"tf": 1}, "snuba_sdk.Column.subscriptable": {"tf": 1}, "snuba_sdk.Column.key": {"tf": 1}, "snuba_sdk.Condition.rhs": {"tf": 1}, "snuba_sdk.CurriedFunction.initializers": {"tf": 1}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1}, "snuba_sdk.CurriedFunction.alias": {"tf": 1}, "snuba_sdk.Entity.alias": {"tf": 1}, "snuba_sdk.Entity.sample": {"tf": 1}, "snuba_sdk.Entity.data_model": {"tf": 1}, "snuba_sdk.Flags.totals": {"tf": 1}, "snuba_sdk.Flags.consistent": {"tf": 1}, "snuba_sdk.Flags.turbo": {"tf": 1}, "snuba_sdk.Flags.debug": {"tf": 1}, "snuba_sdk.Flags.dry_run": {"tf": 1}, "snuba_sdk.Flags.legacy": {"tf": 1}, "snuba_sdk.Formula.parameters": {"tf": 1}, "snuba_sdk.Formula.filters": {"tf": 1}, "snuba_sdk.Formula.groupby": {"tf": 1}, "snuba_sdk.Function.initializers": {"tf": 1}, "snuba_sdk.Metric.public_name": {"tf": 1}, "snuba_sdk.Metric.mri": {"tf": 1}, "snuba_sdk.Metric.id": {"tf": 1}, "snuba_sdk.Metric.entity": {"tf": 1}, "snuba_sdk.MetricsQuery.query": {"tf": 1}, "snuba_sdk.MetricsQuery.start": {"tf": 1}, "snuba_sdk.MetricsQuery.end": {"tf": 1}, "snuba_sdk.MetricsQuery.rollup": {"tf": 1}, "snuba_sdk.MetricsQuery.scope": {"tf": 1}, "snuba_sdk.MetricsQuery.limit": {"tf": 1}, "snuba_sdk.MetricsQuery.offset": {"tf": 1}, "snuba_sdk.MetricsQuery.indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsScope.use_case_id": {"tf": 1}, "snuba_sdk.Query.select": {"tf": 1}, "snuba_sdk.Query.groupby": {"tf": 1}, "snuba_sdk.Query.array_join": {"tf": 1}, "snuba_sdk.Query.where": {"tf": 1}, "snuba_sdk.Query.having": {"tf": 1}, "snuba_sdk.Query.orderby": {"tf": 1}, "snuba_sdk.Query.limitby": {"tf": 1}, "snuba_sdk.Query.limit": {"tf": 1}, "snuba_sdk.Query.offset": {"tf": 1}, "snuba_sdk.Query.granularity": {"tf": 1}, "snuba_sdk.Query.totals": {"tf": 1}, "snuba_sdk.Rollup.interval": {"tf": 1}, "snuba_sdk.Rollup.totals": {"tf": 1}, "snuba_sdk.Rollup.orderby": {"tf": 1}, "snuba_sdk.Rollup.granularity": {"tf": 1}, "snuba_sdk.Timeseries.aggregate_params": {"tf": 1}, "snuba_sdk.Timeseries.filters": {"tf": 1}, "snuba_sdk.Timeseries.groupby": {"tf": 1}}, "df": 52}}, "t": {"docs": {"snuba_sdk.Op.NOT_IN": {"tf": 1.4142135623730951}, "snuba_sdk.Op.NOT_LIKE": {"tf": 1.4142135623730951}, "snuba_sdk.Op.IS_NOT_NULL": {"tf": 1.4142135623730951}, "snuba_sdk.Op.NOT": {"tf": 1}}, "df": 4}}, "e": {"docs": {}, "df": 0, "q": {"docs": {"snuba_sdk.Op.NEQ": {"tf": 1}}, "df": 1}}, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.Op.IS_NULL": {"tf": 1.4142135623730951}, "snuba_sdk.Op.IS_NOT_NULL": {"tf": 1.4142135623730951}}, "df": 2}}}}, "l": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.And.op": {"tf": 1}, "snuba_sdk.ArithmeticOperator.PLUS": {"tf": 1}, "snuba_sdk.ArithmeticOperator.MINUS": {"tf": 1}, "snuba_sdk.ArithmeticOperator.MULTIPLY": {"tf": 1}, "snuba_sdk.ArithmeticOperator.DIVIDE": {"tf": 1}, "snuba_sdk.BooleanOp.AND": {"tf": 1}, "snuba_sdk.BooleanOp.OR": {"tf": 1}, "snuba_sdk.Direction.ASC": {"tf": 1}, "snuba_sdk.Direction.DESC": {"tf": 1}, "snuba_sdk.Op.GT": {"tf": 1}, "snuba_sdk.Op.LT": {"tf": 1.7320508075688772}, "snuba_sdk.Op.GTE": {"tf": 1}, "snuba_sdk.Op.LTE": {"tf": 1.4142135623730951}, "snuba_sdk.Op.EQ": {"tf": 1}, "snuba_sdk.Op.NEQ": {"tf": 1}, "snuba_sdk.Op.IN": {"tf": 1}, "snuba_sdk.Op.NOT_IN": {"tf": 1}, "snuba_sdk.Op.LIKE": {"tf": 1}, "snuba_sdk.Op.NOT_LIKE": {"tf": 1}, "snuba_sdk.Op.IS_NULL": {"tf": 1}, "snuba_sdk.Op.IS_NOT_NULL": {"tf": 1}, "snuba_sdk.Op.NOT": {"tf": 1}, "snuba_sdk.Or.op": {"tf": 1}, "snuba_sdk.Request.parent_api": {"tf": 1}}, "df": 24, "e": {"docs": {"snuba_sdk.Op.LTE": {"tf": 1}}, "df": 1}}, "i": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Op.LIKE": {"tf": 1.4142135623730951}, "snuba_sdk.Op.NOT_LIKE": {"tf": 1.4142135623730951}}, "df": 2}}}}, "b": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.And.op": {"tf": 1}, "snuba_sdk.BooleanOp.AND": {"tf": 1}, "snuba_sdk.BooleanOp.OR": {"tf": 1}, "snuba_sdk.Or.op": {"tf": 1}}, "df": 4}}}}}}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.And.op": {"tf": 1.4142135623730951}, "snuba_sdk.BooleanOp.AND": {"tf": 1.4142135623730951}}, "df": 2}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.ArithmeticOperator.PLUS": {"tf": 1}, "snuba_sdk.ArithmeticOperator.MINUS": {"tf": 1}, "snuba_sdk.ArithmeticOperator.MULTIPLY": {"tf": 1}, "snuba_sdk.ArithmeticOperator.DIVIDE": {"tf": 1}}, "df": 4}}}}}}}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "c": {"docs": {"snuba_sdk.Direction.ASC": {"tf": 1.4142135623730951}}, "df": 1}}}, "x": {"2": {"7": {"docs": {"snuba_sdk.And.op": {"tf": 1.4142135623730951}, "snuba_sdk.ArithmeticOperator.PLUS": {"tf": 1.4142135623730951}, "snuba_sdk.ArithmeticOperator.MINUS": {"tf": 1.4142135623730951}, "snuba_sdk.ArithmeticOperator.MULTIPLY": {"tf": 1.4142135623730951}, "snuba_sdk.ArithmeticOperator.DIVIDE": {"tf": 1.4142135623730951}, "snuba_sdk.BooleanOp.AND": {"tf": 1.4142135623730951}, "snuba_sdk.BooleanOp.OR": {"tf": 1.4142135623730951}, "snuba_sdk.Direction.ASC": {"tf": 1.4142135623730951}, "snuba_sdk.Direction.DESC": {"tf": 1.4142135623730951}, "snuba_sdk.Op.GT": {"tf": 1.4142135623730951}, "snuba_sdk.Op.LT": {"tf": 1.4142135623730951}, "snuba_sdk.Op.GTE": {"tf": 1.4142135623730951}, "snuba_sdk.Op.LTE": {"tf": 1.4142135623730951}, "snuba_sdk.Op.EQ": {"tf": 1.4142135623730951}, "snuba_sdk.Op.NEQ": {"tf": 1.4142135623730951}, "snuba_sdk.Op.IN": {"tf": 1.4142135623730951}, "snuba_sdk.Op.NOT_IN": {"tf": 1.4142135623730951}, "snuba_sdk.Op.LIKE": {"tf": 1.4142135623730951}, "snuba_sdk.Op.NOT_LIKE": {"tf": 1.4142135623730951}, "snuba_sdk.Op.IS_NULL": {"tf": 1.4142135623730951}, "snuba_sdk.Op.IS_NOT_NULL": {"tf": 1.4142135623730951}, "snuba_sdk.Op.NOT": {"tf": 1.4142135623730951}, "snuba_sdk.Or.op": {"tf": 1.4142135623730951}, "snuba_sdk.Request.parent_api": {"tf": 1.4142135623730951}}, "df": 24}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "g": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.And.op": {"tf": 1}, "snuba_sdk.ArithmeticOperator.PLUS": {"tf": 1}, "snuba_sdk.ArithmeticOperator.MINUS": {"tf": 1}, "snuba_sdk.ArithmeticOperator.MULTIPLY": {"tf": 1}, "snuba_sdk.ArithmeticOperator.DIVIDE": {"tf": 1}, "snuba_sdk.BooleanOp.AND": {"tf": 1}, "snuba_sdk.BooleanOp.OR": {"tf": 1}, "snuba_sdk.Direction.ASC": {"tf": 1}, "snuba_sdk.Direction.DESC": {"tf": 1}, "snuba_sdk.Op.GT": {"tf": 1.7320508075688772}, "snuba_sdk.Op.LT": {"tf": 1}, "snuba_sdk.Op.GTE": {"tf": 1.4142135623730951}, "snuba_sdk.Op.LTE": {"tf": 1}, "snuba_sdk.Op.EQ": {"tf": 1}, "snuba_sdk.Op.NEQ": {"tf": 1}, "snuba_sdk.Op.IN": {"tf": 1}, "snuba_sdk.Op.NOT_IN": {"tf": 1}, "snuba_sdk.Op.LIKE": {"tf": 1}, "snuba_sdk.Op.NOT_LIKE": {"tf": 1}, "snuba_sdk.Op.IS_NULL": {"tf": 1}, "snuba_sdk.Op.IS_NOT_NULL": {"tf": 1}, "snuba_sdk.Op.NOT": {"tf": 1}, "snuba_sdk.Or.op": {"tf": 1}, "snuba_sdk.Request.parent_api": {"tf": 1}}, "df": 24, "e": {"docs": {"snuba_sdk.Op.GTE": {"tf": 1}}, "df": 1}}}, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.ArithmeticOperator.PLUS": {"tf": 1.4142135623730951}}, "df": 1}}}}, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.ArithmeticOperator.MINUS": {"tf": 1.4142135623730951}}, "df": 1}}}}, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.ArithmeticOperator.MULTIPLY": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.ArithmeticOperator.DIVIDE": {"tf": 1.4142135623730951}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Direction.ASC": {"tf": 1}, "snuba_sdk.Direction.DESC": {"tf": 1}}, "df": 2}}}}}}}}, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {"snuba_sdk.Direction.DESC": {"tf": 1.4142135623730951}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.BooleanOp.OR": {"tf": 1.4142135623730951}, "snuba_sdk.Or.op": {"tf": 1.4142135623730951}}, "df": 2}, "p": {"docs": {"snuba_sdk.Op.GT": {"tf": 1}, "snuba_sdk.Op.LT": {"tf": 1}, "snuba_sdk.Op.GTE": {"tf": 1}, "snuba_sdk.Op.LTE": {"tf": 1}, "snuba_sdk.Op.EQ": {"tf": 1}, "snuba_sdk.Op.NEQ": {"tf": 1}, "snuba_sdk.Op.IN": {"tf": 1}, "snuba_sdk.Op.NOT_IN": {"tf": 1}, "snuba_sdk.Op.LIKE": {"tf": 1}, "snuba_sdk.Op.NOT_LIKE": {"tf": 1}, "snuba_sdk.Op.IS_NULL": {"tf": 1}, "snuba_sdk.Op.IS_NOT_NULL": {"tf": 1}, "snuba_sdk.Op.NOT": {"tf": 1}}, "df": 13}}, "e": {"docs": {}, "df": 0, "q": {"docs": {"snuba_sdk.Op.EQ": {"tf": 1}}, "df": 1}}, "i": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Op.IN": {"tf": 1.4142135623730951}, "snuba_sdk.Op.NOT_IN": {"tf": 1.4142135623730951}}, "df": 2}, "s": {"docs": {"snuba_sdk.Op.IS_NULL": {"tf": 1.4142135623730951}, "snuba_sdk.Op.IS_NOT_NULL": {"tf": 1.4142135623730951}}, "df": 2}}, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Request.parent_api": {"tf": 1}}, "df": 1}}}}}}}}}, "signature": {"root": {"3": {"9": {"docs": {"snuba_sdk.Flags.__init__": {"tf": 3.4641016151377544}, "snuba_sdk.Flags.to_dict": {"tf": 1.4142135623730951}, "snuba_sdk.Formula.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Formula.set_filters": {"tf": 1.4142135623730951}, "snuba_sdk.Formula.set_groupby": {"tf": 1.4142135623730951}, "snuba_sdk.Join.get_alias_mappings": {"tf": 1.4142135623730951}, "snuba_sdk.Join.get_entities": {"tf": 1.4142135623730951}, "snuba_sdk.Metric.__init__": {"tf": 2.8284271247461903}, "snuba_sdk.MetricsQuery.__init__": {"tf": 4}, "snuba_sdk.MetricsQuery.set_query": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.serialize_to_mql": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsScope.__init__": {"tf": 2.449489742783178}, "snuba_sdk.Request.__init__": {"tf": 2}, "snuba_sdk.Request.to_dict": {"tf": 1.4142135623730951}, "snuba_sdk.Rollup.__init__": {"tf": 2.8284271247461903}, "snuba_sdk.Timeseries.__init__": {"tf": 2.449489742783178}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries.set_filters": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries.set_groupby": {"tf": 1.4142135623730951}}, "df": 20}, "docs": {}, "df": 0}, "docs": {"snuba_sdk.AliasedExpression.__init__": {"tf": 6.6332495807108}, "snuba_sdk.AliasedExpression.validate": {"tf": 3.4641016151377544}, "snuba_sdk.And.__init__": {"tf": 7.3484692283495345}, "snuba_sdk.BooleanCondition.__init__": {"tf": 7.681145747868608}, "snuba_sdk.BooleanCondition.validate": {"tf": 3.4641016151377544}, "snuba_sdk.Column.__init__": {"tf": 6.6332495807108}, "snuba_sdk.Column.validate": {"tf": 3.4641016151377544}, "snuba_sdk.Column.validate_data_model": {"tf": 5.291502622129181}, "snuba_sdk.Condition.__init__": {"tf": 15.427248620541512}, "snuba_sdk.Condition.validate": {"tf": 3.4641016151377544}, "snuba_sdk.CurriedFunction.__init__": {"tf": 18.193405398660254}, "snuba_sdk.CurriedFunction.validate": {"tf": 3.4641016151377544}, "snuba_sdk.Entity.__init__": {"tf": 9.797958971132712}, "snuba_sdk.Entity.validate": {"tf": 3.4641016151377544}, "snuba_sdk.Flags.__init__": {"tf": 10.583005244258363}, "snuba_sdk.Flags.validate": {"tf": 3.4641016151377544}, "snuba_sdk.Flags.to_dict": {"tf": 3.7416573867739413}, "snuba_sdk.Formula.__init__": {"tf": 12.24744871391589}, "snuba_sdk.Formula.validate": {"tf": 3.4641016151377544}, "snuba_sdk.Formula.set_parameters": {"tf": 8.602325267042627}, "snuba_sdk.Formula.set_filters": {"tf": 5.5677643628300215}, "snuba_sdk.Formula.set_groupby": {"tf": 5.830951894845301}, "snuba_sdk.Function.__init__": {"tf": 15.620499351813308}, "snuba_sdk.Granularity.__init__": {"tf": 3.4641016151377544}, "snuba_sdk.Granularity.validate": {"tf": 3.4641016151377544}, "snuba_sdk.Identifier.__init__": {"tf": 3.4641016151377544}, "snuba_sdk.Identifier.validate": {"tf": 3.4641016151377544}, "snuba_sdk.Join.__init__": {"tf": 5}, "snuba_sdk.Join.get_alias_mappings": {"tf": 3.7416573867739413}, "snuba_sdk.Join.get_entities": {"tf": 3.7416573867739413}, "snuba_sdk.Join.validate": {"tf": 3.4641016151377544}, "snuba_sdk.Lambda.__init__": {"tf": 5.916079783099616}, "snuba_sdk.Lambda.validate": {"tf": 3.4641016151377544}, "snuba_sdk.Limit.__init__": {"tf": 3.4641016151377544}, "snuba_sdk.Limit.validate": {"tf": 3.4641016151377544}, "snuba_sdk.LimitBy.__init__": {"tf": 5.744562646538029}, "snuba_sdk.LimitBy.validate": {"tf": 3.4641016151377544}, "snuba_sdk.Metric.__init__": {"tf": 8.717797887081348}, "snuba_sdk.Metric.get_fields": {"tf": 4.123105625617661}, "snuba_sdk.Metric.validate": {"tf": 3.4641016151377544}, "snuba_sdk.Metric.set_mri": {"tf": 5.291502622129181}, "snuba_sdk.Metric.set_public_name": {"tf": 5.291502622129181}, "snuba_sdk.Metric.set_id": {"tf": 5.291502622129181}, "snuba_sdk.Metric.set_entity": {"tf": 5.291502622129181}, "snuba_sdk.MetricsQuery.__init__": {"tf": 12.24744871391589}, "snuba_sdk.MetricsQuery.set_query": {"tf": 5.744562646538029}, "snuba_sdk.MetricsQuery.set_start": {"tf": 5.656854249492381}, "snuba_sdk.MetricsQuery.set_end": {"tf": 5.656854249492381}, "snuba_sdk.MetricsQuery.set_rollup": {"tf": 6.164414002968976}, "snuba_sdk.MetricsQuery.set_scope": {"tf": 6.164414002968976}, "snuba_sdk.MetricsQuery.set_limit": {"tf": 5.291502622129181}, "snuba_sdk.MetricsQuery.set_offset": {"tf": 5.291502622129181}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 5.744562646538029}, "snuba_sdk.MetricsQuery.validate": {"tf": 3.4641016151377544}, "snuba_sdk.MetricsQuery.serialize": {"tf": 3.4641016151377544}, "snuba_sdk.MetricsQuery.print": {"tf": 3.4641016151377544}, "snuba_sdk.MetricsQuery.serialize_to_mql": {"tf": 3.872983346207417}, "snuba_sdk.MetricsScope.__init__": {"tf": 6.6332495807108}, "snuba_sdk.MetricsScope.validate": {"tf": 3.4641016151377544}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 5.291502622129181}, "snuba_sdk.Offset.__init__": {"tf": 3.4641016151377544}, "snuba_sdk.Offset.validate": {"tf": 3.4641016151377544}, "snuba_sdk.Or.__init__": {"tf": 7.3484692283495345}, "snuba_sdk.OrderBy.__init__": {"tf": 8.306623862918075}, "snuba_sdk.OrderBy.validate": {"tf": 3.4641016151377544}, "snuba_sdk.Query.__init__": {"tf": 23.430749027719962}, "snuba_sdk.Query.set_match": {"tf": 8.306623862918075}, "snuba_sdk.Query.set_select": {"tf": 9.219544457292887}, "snuba_sdk.Query.set_groupby": {"tf": 9.219544457292887}, "snuba_sdk.Query.set_array_join": {"tf": 6.557438524302}, "snuba_sdk.Query.set_where": {"tf": 7.681145747868608}, "snuba_sdk.Query.set_having": {"tf": 7.681145747868608}, "snuba_sdk.Query.set_orderby": {"tf": 6.557438524302}, "snuba_sdk.Query.set_limitby": {"tf": 6}, "snuba_sdk.Query.set_limit": {"tf": 5.291502622129181}, "snuba_sdk.Query.set_offset": {"tf": 5.291502622129181}, "snuba_sdk.Query.set_granularity": {"tf": 5.291502622129181}, "snuba_sdk.Query.set_totals": {"tf": 5.291502622129181}, "snuba_sdk.Query.validate": {"tf": 3.4641016151377544}, "snuba_sdk.Query.serialize": {"tf": 3.4641016151377544}, "snuba_sdk.Query.print": {"tf": 3.4641016151377544}, "snuba_sdk.Relationship.__init__": {"tf": 6.855654600401044}, "snuba_sdk.Relationship.validate": {"tf": 3.4641016151377544}, "snuba_sdk.Request.__init__": {"tf": 10.44030650891055}, "snuba_sdk.Request.validate": {"tf": 3.4641016151377544}, "snuba_sdk.Request.to_dict": {"tf": 5.477225575051661}, "snuba_sdk.Request.serialize": {"tf": 3.4641016151377544}, "snuba_sdk.Request.serialize_mql": {"tf": 3.4641016151377544}, "snuba_sdk.Request.print": {"tf": 5.0990195135927845}, "snuba_sdk.Rollup.__init__": {"tf": 8.717797887081348}, "snuba_sdk.Rollup.validate": {"tf": 3.4641016151377544}, "snuba_sdk.Timeseries.__init__": {"tf": 9.219544457292887}, "snuba_sdk.Timeseries.get_fields": {"tf": 4.123105625617661}, "snuba_sdk.Timeseries.validate": {"tf": 3.4641016151377544}, "snuba_sdk.Timeseries.set_metric": {"tf": 6.164414002968976}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 6.928203230275509}, "snuba_sdk.Timeseries.set_filters": {"tf": 5.744562646538029}, "snuba_sdk.Timeseries.set_groupby": {"tf": 5.830951894845301}, "snuba_sdk.Totals.__init__": {"tf": 3.4641016151377544}, "snuba_sdk.Totals.validate": {"tf": 3.4641016151377544}}, "df": 100, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.AliasedExpression.__init__": {"tf": 1}, "snuba_sdk.OrderBy.__init__": {"tf": 1}}, "df": 2, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Condition.__init__": {"tf": 1}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_select": {"tf": 1}, "snuba_sdk.Query.set_groupby": {"tf": 1}}, "df": 6, "s": {"docs": {"snuba_sdk.Condition.__init__": {"tf": 1}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 2}}, "df": 4}}}}}}}}}}, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Column.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Column.validate_data_model": {"tf": 1.7320508075688772}, "snuba_sdk.Metric.__init__": {"tf": 1}, "snuba_sdk.Metric.set_entity": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_match": {"tf": 1.4142135623730951}, "snuba_sdk.Relationship.__init__": {"tf": 2}}, "df": 7, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.Entity.__init__": {"tf": 1}}, "df": 1}}}}}}}}}, "d": {"docs": {"snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.set_end": {"tf": 1}}, "df": 2}}}, "s": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.AliasedExpression.__init__": {"tf": 1}, "snuba_sdk.And.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.BooleanCondition.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Column.__init__": {"tf": 1}, "snuba_sdk.Column.validate_data_model": {"tf": 1}, "snuba_sdk.Condition.__init__": {"tf": 2.8284271247461903}, "snuba_sdk.CurriedFunction.__init__": {"tf": 2.6457513110645907}, "snuba_sdk.Entity.__init__": {"tf": 1}, "snuba_sdk.Formula.__init__": {"tf": 2}, "snuba_sdk.Formula.set_parameters": {"tf": 1.7320508075688772}, "snuba_sdk.Formula.set_filters": {"tf": 1}, "snuba_sdk.Formula.set_groupby": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 2.449489742783178}, "snuba_sdk.Join.__init__": {"tf": 1}, "snuba_sdk.Lambda.__init__": {"tf": 1}, "snuba_sdk.LimitBy.__init__": {"tf": 1}, "snuba_sdk.Metric.set_mri": {"tf": 1}, "snuba_sdk.Metric.set_public_name": {"tf": 1}, "snuba_sdk.Metric.set_id": {"tf": 1}, "snuba_sdk.Metric.set_entity": {"tf": 1}, "snuba_sdk.MetricsQuery.set_query": {"tf": 1}, "snuba_sdk.MetricsQuery.set_start": {"tf": 1}, "snuba_sdk.MetricsQuery.set_end": {"tf": 1}, "snuba_sdk.MetricsQuery.set_rollup": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.set_scope": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.set_limit": {"tf": 1}, "snuba_sdk.MetricsQuery.set_offset": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}, "snuba_sdk.Or.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.OrderBy.__init__": {"tf": 2}, "snuba_sdk.Query.__init__": {"tf": 4.69041575982343}, "snuba_sdk.Query.set_match": {"tf": 2}, "snuba_sdk.Query.set_select": {"tf": 2.23606797749979}, "snuba_sdk.Query.set_groupby": {"tf": 2.23606797749979}, "snuba_sdk.Query.set_array_join": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_where": {"tf": 1.7320508075688772}, "snuba_sdk.Query.set_having": {"tf": 1.7320508075688772}, "snuba_sdk.Query.set_orderby": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_limitby": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_limit": {"tf": 1}, "snuba_sdk.Query.set_offset": {"tf": 1}, "snuba_sdk.Query.set_granularity": {"tf": 1}, "snuba_sdk.Query.set_totals": {"tf": 1}, "snuba_sdk.Relationship.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Request.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries.__init__": {"tf": 1}, "snuba_sdk.Timeseries.set_metric": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 1}, "snuba_sdk.Timeseries.set_filters": {"tf": 1}, "snuba_sdk.Timeseries.set_groupby": {"tf": 1}}, "df": 51}}}}, "d": {"docs": {}, "df": 0, "k": {"docs": {"snuba_sdk.AliasedExpression.__init__": {"tf": 1}, "snuba_sdk.And.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.BooleanCondition.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Column.__init__": {"tf": 1}, "snuba_sdk.Column.validate_data_model": {"tf": 1}, "snuba_sdk.Condition.__init__": {"tf": 2.8284271247461903}, "snuba_sdk.CurriedFunction.__init__": {"tf": 2.6457513110645907}, "snuba_sdk.Entity.__init__": {"tf": 1}, "snuba_sdk.Formula.__init__": {"tf": 2}, "snuba_sdk.Formula.set_parameters": {"tf": 1.7320508075688772}, "snuba_sdk.Formula.set_filters": {"tf": 1}, "snuba_sdk.Formula.set_groupby": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 2.449489742783178}, "snuba_sdk.Join.__init__": {"tf": 1}, "snuba_sdk.Lambda.__init__": {"tf": 1}, "snuba_sdk.LimitBy.__init__": {"tf": 1}, "snuba_sdk.Metric.set_mri": {"tf": 1}, "snuba_sdk.Metric.set_public_name": {"tf": 1}, "snuba_sdk.Metric.set_id": {"tf": 1}, "snuba_sdk.Metric.set_entity": {"tf": 1}, "snuba_sdk.MetricsQuery.set_query": {"tf": 1}, "snuba_sdk.MetricsQuery.set_start": {"tf": 1}, "snuba_sdk.MetricsQuery.set_end": {"tf": 1}, "snuba_sdk.MetricsQuery.set_rollup": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.set_scope": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.set_limit": {"tf": 1}, "snuba_sdk.MetricsQuery.set_offset": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}, "snuba_sdk.Or.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.OrderBy.__init__": {"tf": 2}, "snuba_sdk.Query.__init__": {"tf": 4.69041575982343}, "snuba_sdk.Query.set_match": {"tf": 2}, "snuba_sdk.Query.set_select": {"tf": 2.23606797749979}, "snuba_sdk.Query.set_groupby": {"tf": 2.23606797749979}, "snuba_sdk.Query.set_array_join": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_where": {"tf": 1.7320508075688772}, "snuba_sdk.Query.set_having": {"tf": 1.7320508075688772}, "snuba_sdk.Query.set_orderby": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_limitby": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_limit": {"tf": 1}, "snuba_sdk.Query.set_offset": {"tf": 1}, "snuba_sdk.Query.set_granularity": {"tf": 1}, "snuba_sdk.Query.set_totals": {"tf": 1}, "snuba_sdk.Relationship.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Request.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries.__init__": {"tf": 1}, "snuba_sdk.Timeseries.set_metric": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 1}, "snuba_sdk.Timeseries.set_filters": {"tf": 1}, "snuba_sdk.Timeseries.set_groupby": {"tf": 1}}, "df": 51}}, "t": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.AliasedExpression.__init__": {"tf": 1}, "snuba_sdk.Column.__init__": {"tf": 1}, "snuba_sdk.Condition.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.CurriedFunction.__init__": {"tf": 2.23606797749979}, "snuba_sdk.Entity.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Formula.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Formula.set_parameters": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 2}, "snuba_sdk.Identifier.__init__": {"tf": 1}, "snuba_sdk.Join.get_alias_mappings": {"tf": 1}, "snuba_sdk.Lambda.__init__": {"tf": 1}, "snuba_sdk.Metric.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Metric.get_fields": {"tf": 1}, "snuba_sdk.Metric.set_mri": {"tf": 1}, "snuba_sdk.Metric.set_public_name": {"tf": 1}, "snuba_sdk.Metric.set_entity": {"tf": 1}, "snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsQuery.serialize": {"tf": 1}, "snuba_sdk.MetricsQuery.print": {"tf": 1}, "snuba_sdk.MetricsQuery.serialize_to_mql": {"tf": 1}, "snuba_sdk.MetricsScope.__init__": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}, "snuba_sdk.Query.serialize": {"tf": 1}, "snuba_sdk.Query.print": {"tf": 1}, "snuba_sdk.Relationship.__init__": {"tf": 1}, "snuba_sdk.Request.__init__": {"tf": 2}, "snuba_sdk.Request.to_dict": {"tf": 1}, "snuba_sdk.Request.serialize": {"tf": 1}, "snuba_sdk.Request.serialize_mql": {"tf": 1}, "snuba_sdk.Request.print": {"tf": 1}, "snuba_sdk.Timeseries.__init__": {"tf": 1}, "snuba_sdk.Timeseries.get_fields": {"tf": 1}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 1}}, "df": 34}, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.set_start": {"tf": 1}}, "df": 2}}}}, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "f": {"docs": {"snuba_sdk.AliasedExpression.validate": {"tf": 1}, "snuba_sdk.BooleanCondition.validate": {"tf": 1}, "snuba_sdk.Column.validate": {"tf": 1}, "snuba_sdk.Column.validate_data_model": {"tf": 1}, "snuba_sdk.Condition.validate": {"tf": 1}, "snuba_sdk.CurriedFunction.validate": {"tf": 1}, "snuba_sdk.Entity.validate": {"tf": 1}, "snuba_sdk.Flags.validate": {"tf": 1}, "snuba_sdk.Flags.to_dict": {"tf": 1}, "snuba_sdk.Formula.validate": {"tf": 1}, "snuba_sdk.Formula.set_parameters": {"tf": 1}, "snuba_sdk.Formula.set_filters": {"tf": 1}, "snuba_sdk.Formula.set_groupby": {"tf": 1}, "snuba_sdk.Granularity.validate": {"tf": 1}, "snuba_sdk.Identifier.validate": {"tf": 1}, "snuba_sdk.Join.get_alias_mappings": {"tf": 1}, "snuba_sdk.Join.get_entities": {"tf": 1}, "snuba_sdk.Join.validate": {"tf": 1}, "snuba_sdk.Lambda.validate": {"tf": 1}, "snuba_sdk.Limit.validate": {"tf": 1}, "snuba_sdk.LimitBy.validate": {"tf": 1}, "snuba_sdk.Metric.get_fields": {"tf": 1}, "snuba_sdk.Metric.validate": {"tf": 1}, "snuba_sdk.Metric.set_mri": {"tf": 1}, "snuba_sdk.Metric.set_public_name": {"tf": 1}, "snuba_sdk.Metric.set_id": {"tf": 1}, "snuba_sdk.Metric.set_entity": {"tf": 1}, "snuba_sdk.MetricsQuery.set_query": {"tf": 1}, "snuba_sdk.MetricsQuery.set_start": {"tf": 1}, "snuba_sdk.MetricsQuery.set_end": {"tf": 1}, "snuba_sdk.MetricsQuery.set_rollup": {"tf": 1}, "snuba_sdk.MetricsQuery.set_scope": {"tf": 1}, "snuba_sdk.MetricsQuery.set_limit": {"tf": 1}, "snuba_sdk.MetricsQuery.set_offset": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsQuery.validate": {"tf": 1}, "snuba_sdk.MetricsQuery.serialize": {"tf": 1}, "snuba_sdk.MetricsQuery.print": {"tf": 1}, "snuba_sdk.MetricsQuery.serialize_to_mql": {"tf": 1}, "snuba_sdk.MetricsScope.validate": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}, "snuba_sdk.Offset.validate": {"tf": 1}, "snuba_sdk.OrderBy.validate": {"tf": 1}, "snuba_sdk.Query.set_match": {"tf": 1}, "snuba_sdk.Query.set_select": {"tf": 1}, "snuba_sdk.Query.set_groupby": {"tf": 1}, "snuba_sdk.Query.set_array_join": {"tf": 1}, "snuba_sdk.Query.set_where": {"tf": 1}, "snuba_sdk.Query.set_having": {"tf": 1}, "snuba_sdk.Query.set_orderby": {"tf": 1}, "snuba_sdk.Query.set_limitby": {"tf": 1}, "snuba_sdk.Query.set_limit": {"tf": 1}, "snuba_sdk.Query.set_offset": {"tf": 1}, "snuba_sdk.Query.set_granularity": {"tf": 1}, "snuba_sdk.Query.set_totals": {"tf": 1}, "snuba_sdk.Query.validate": {"tf": 1}, "snuba_sdk.Query.serialize": {"tf": 1}, "snuba_sdk.Query.print": {"tf": 1}, "snuba_sdk.Relationship.validate": {"tf": 1}, "snuba_sdk.Request.validate": {"tf": 1}, "snuba_sdk.Request.to_dict": {"tf": 1}, "snuba_sdk.Request.serialize": {"tf": 1}, "snuba_sdk.Request.serialize_mql": {"tf": 1}, "snuba_sdk.Request.print": {"tf": 1}, "snuba_sdk.Rollup.validate": {"tf": 1}, "snuba_sdk.Timeseries.get_fields": {"tf": 1}, "snuba_sdk.Timeseries.validate": {"tf": 1}, "snuba_sdk.Timeseries.set_metric": {"tf": 1}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 1}, "snuba_sdk.Timeseries.set_filters": {"tf": 1}, "snuba_sdk.Timeseries.set_groupby": {"tf": 1}, "snuba_sdk.Totals.validate": {"tf": 1}}, "df": 72}, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Query.__init__": {"tf": 1}, "snuba_sdk.Query.set_select": {"tf": 1}}, "df": 2}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.And.__init__": {"tf": 1}, "snuba_sdk.BooleanCondition.__init__": {"tf": 1}, "snuba_sdk.Condition.__init__": {"tf": 1}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Formula.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Formula.set_parameters": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Join.__init__": {"tf": 1}, "snuba_sdk.Lambda.__init__": {"tf": 1}, "snuba_sdk.LimitBy.__init__": {"tf": 1}, "snuba_sdk.Metric.get_fields": {"tf": 1}, "snuba_sdk.Or.__init__": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 2.449489742783178}, "snuba_sdk.Query.set_select": {"tf": 1}, "snuba_sdk.Query.set_groupby": {"tf": 1}, "snuba_sdk.Query.set_array_join": {"tf": 1}, "snuba_sdk.Query.set_where": {"tf": 1}, "snuba_sdk.Query.set_having": {"tf": 1}, "snuba_sdk.Query.set_orderby": {"tf": 1}, "snuba_sdk.Timeseries.get_fields": {"tf": 1}}, "df": 20}}}}}}, "t": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.Join.get_alias_mappings": {"tf": 1}}, "df": 1}}}}}}}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Join.get_entities": {"tf": 1}}, "df": 1}}}}}}}}}, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Entity.__init__": {"tf": 1}}, "df": 1}}}}}, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.Entity.__init__": {"tf": 1}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.set_scope": {"tf": 1}}, "df": 2}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.AliasedExpression.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Condition.__init__": {"tf": 2}, "snuba_sdk.CurriedFunction.__init__": {"tf": 2}, "snuba_sdk.Function.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.LimitBy.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.OrderBy.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Query.__init__": {"tf": 2.449489742783178}, "snuba_sdk.Query.set_select": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_groupby": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_array_join": {"tf": 1.4142135623730951}}, "df": 10, "s": {"docs": {"snuba_sdk.LimitBy.__init__": {"tf": 1}}, "df": 1}}}}}, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.And.__init__": {"tf": 1}, "snuba_sdk.BooleanCondition.__init__": {"tf": 1}, "snuba_sdk.Formula.__init__": {"tf": 1}, "snuba_sdk.Or.__init__": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_where": {"tf": 1}, "snuba_sdk.Query.set_having": {"tf": 1}}, "df": 7, "s": {"docs": {"snuba_sdk.And.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.BooleanCondition.__init__": {"tf": 2}, "snuba_sdk.Condition.__init__": {"tf": 1}, "snuba_sdk.Formula.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Or.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Query.__init__": {"tf": 2}, "snuba_sdk.Query.set_where": {"tf": 1.7320508075688772}, "snuba_sdk.Query.set_having": {"tf": 1.7320508075688772}}, "df": 8}, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.Formula.set_filters": {"tf": 1}, "snuba_sdk.Timeseries.__init__": {"tf": 1}, "snuba_sdk.Timeseries.set_filters": {"tf": 1}}, "df": 3}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Flags.__init__": {"tf": 1}}, "df": 1}}}}}}}}, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.LimitBy.__init__": {"tf": 1}}, "df": 1}}}}, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Condition.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1}, "snuba_sdk.Lambda.__init__": {"tf": 1}, "snuba_sdk.OrderBy.__init__": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_select": {"tf": 1}, "snuba_sdk.Query.set_groupby": {"tf": 1}}, "df": 8}}}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsScope.__init__": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}}, "df": 2}}}}, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.AliasedExpression.__init__": {"tf": 1}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1}, "snuba_sdk.Entity.__init__": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1}}, "df": 4, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.Query.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_select": {"tf": 1}, "snuba_sdk.Query.set_groupby": {"tf": 1}}, "df": 3, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Formula.__init__": {"tf": 1}, "snuba_sdk.Formula.set_groupby": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_select": {"tf": 1}, "snuba_sdk.Query.set_groupby": {"tf": 1}, "snuba_sdk.Timeseries.__init__": {"tf": 1}, "snuba_sdk.Timeseries.set_groupby": {"tf": 1}}, "df": 7}}}}}}}}}}}}}}}}, "n": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.MetricsQuery.serialize_to_mql": {"tf": 1}, "snuba_sdk.Request.to_dict": {"tf": 1}}, "df": 2}}, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Query.__init__": {"tf": 1}, "snuba_sdk.Query.set_array_join": {"tf": 1}}, "df": 2}}}}, "p": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.Request.__init__": {"tf": 1}}, "df": 1}, "i": {"docs": {"snuba_sdk.Request.__init__": {"tf": 1}}, "df": 1}}, "g": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Timeseries.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 1.4142135623730951}}, "df": 2}}}}}}}}}, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.AliasedExpression.__init__": {"tf": 1}, "snuba_sdk.And.__init__": {"tf": 1}, "snuba_sdk.BooleanCondition.__init__": {"tf": 1}, "snuba_sdk.Column.__init__": {"tf": 1}, "snuba_sdk.Condition.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.CurriedFunction.__init__": {"tf": 2.449489742783178}, "snuba_sdk.Entity.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Formula.__init__": {"tf": 2}, "snuba_sdk.Formula.set_parameters": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 2}, "snuba_sdk.Or.__init__": {"tf": 1}, "snuba_sdk.OrderBy.__init__": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 4}, "snuba_sdk.Query.set_match": {"tf": 1}, "snuba_sdk.Query.set_select": {"tf": 1}, "snuba_sdk.Query.set_groupby": {"tf": 1}, "snuba_sdk.Query.set_where": {"tf": 1}, "snuba_sdk.Query.set_having": {"tf": 1}}, "df": 18}}}, "k": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Request.__init__": {"tf": 1}}, "df": 1}}}}}}, "s": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsScope.__init__": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}}, "df": 2}}}, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.AliasedExpression.__init__": {"tf": 1}, "snuba_sdk.AliasedExpression.validate": {"tf": 1}, "snuba_sdk.BooleanCondition.validate": {"tf": 1}, "snuba_sdk.Column.__init__": {"tf": 1}, "snuba_sdk.Column.validate": {"tf": 1}, "snuba_sdk.Column.validate_data_model": {"tf": 1}, "snuba_sdk.Condition.__init__": {"tf": 1}, "snuba_sdk.Condition.validate": {"tf": 1}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.CurriedFunction.validate": {"tf": 1}, "snuba_sdk.Entity.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Entity.validate": {"tf": 1}, "snuba_sdk.Flags.__init__": {"tf": 3.4641016151377544}, "snuba_sdk.Flags.validate": {"tf": 1}, "snuba_sdk.Formula.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Formula.validate": {"tf": 1}, "snuba_sdk.Formula.set_filters": {"tf": 1}, "snuba_sdk.Formula.set_groupby": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Granularity.validate": {"tf": 1}, "snuba_sdk.Identifier.validate": {"tf": 1}, "snuba_sdk.Join.validate": {"tf": 1}, "snuba_sdk.Lambda.validate": {"tf": 1}, "snuba_sdk.Limit.validate": {"tf": 1}, "snuba_sdk.LimitBy.validate": {"tf": 1}, "snuba_sdk.Metric.__init__": {"tf": 2.8284271247461903}, "snuba_sdk.Metric.validate": {"tf": 1}, "snuba_sdk.MetricsQuery.__init__": {"tf": 4}, "snuba_sdk.MetricsQuery.validate": {"tf": 1}, "snuba_sdk.MetricsScope.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsScope.validate": {"tf": 1}, "snuba_sdk.Offset.validate": {"tf": 1}, "snuba_sdk.OrderBy.validate": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 3.3166247903554}, "snuba_sdk.Query.validate": {"tf": 1}, "snuba_sdk.Relationship.validate": {"tf": 1}, "snuba_sdk.Request.validate": {"tf": 1}, "snuba_sdk.Rollup.__init__": {"tf": 2.8284271247461903}, "snuba_sdk.Rollup.validate": {"tf": 1}, "snuba_sdk.Timeseries.__init__": {"tf": 2.449489742783178}, "snuba_sdk.Timeseries.validate": {"tf": 1}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries.set_filters": {"tf": 1}, "snuba_sdk.Timeseries.set_groupby": {"tf": 1}, "snuba_sdk.Totals.validate": {"tf": 1}}, "df": 45, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.AliasedExpression.__init__": {"tf": 1}, "snuba_sdk.Column.__init__": {"tf": 1}, "snuba_sdk.Condition.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.CurriedFunction.__init__": {"tf": 2.449489742783178}, "snuba_sdk.Entity.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Formula.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Function.__init__": {"tf": 2}, "snuba_sdk.Query.__init__": {"tf": 3.3166247903554}}, "df": 8}}}}}}}, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Column.__init__": {"tf": 1}, "snuba_sdk.Entity.__init__": {"tf": 1}, "snuba_sdk.Formula.__init__": {"tf": 1}, "snuba_sdk.Identifier.__init__": {"tf": 1}, "snuba_sdk.Metric.__init__": {"tf": 1}, "snuba_sdk.Metric.set_public_name": {"tf": 1}, "snuba_sdk.Relationship.__init__": {"tf": 1}}, "df": 7}}}}, "b": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.Condition.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Flags.__init__": {"tf": 2.449489742783178}, "snuba_sdk.Flags.to_dict": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_totals": {"tf": 1}, "snuba_sdk.Request.to_dict": {"tf": 1.4142135623730951}, "snuba_sdk.Request.print": {"tf": 1}, "snuba_sdk.Rollup.__init__": {"tf": 1}, "snuba_sdk.Totals.__init__": {"tf": 1}}, "df": 10, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.And.__init__": {"tf": 1}, "snuba_sdk.BooleanCondition.__init__": {"tf": 1}, "snuba_sdk.Formula.__init__": {"tf": 1}, "snuba_sdk.Or.__init__": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_where": {"tf": 1}, "snuba_sdk.Query.set_having": {"tf": 1}}, "df": 7}}}}}}}}}, "o": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.BooleanCondition.__init__": {"tf": 1}}, "df": 1}}}}}}}}, "y": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Condition.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Function.__init__": {"tf": 1.4142135623730951}}, "df": 3}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Request.__init__": {"tf": 1}}, "df": 1}}}}}}}}}, "l": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.And.__init__": {"tf": 1}, "snuba_sdk.Or.__init__": {"tf": 1}, "snuba_sdk.Request.__init__": {"tf": 1.7320508075688772}}, "df": 3}, "h": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Condition.__init__": {"tf": 1}, "snuba_sdk.Relationship.__init__": {"tf": 1}}, "df": 2}}, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.CurriedFunction.__init__": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1}}, "df": 2}}}}}, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Flags.__init__": {"tf": 1}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Formula.set_groupby": {"tf": 1}, "snuba_sdk.Timeseries.__init__": {"tf": 1}, "snuba_sdk.Timeseries.set_groupby": {"tf": 1}}, "df": 3}}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MetricsScope.__init__": {"tf": 1.4142135623730951}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Timeseries.__init__": {"tf": 1}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 1}}, "df": 2}}}}}}, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Limit.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.set_limit": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_limit": {"tf": 1}}, "df": 5, "b": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Query.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_limitby": {"tf": 1.4142135623730951}}, "df": 2}}}}}}}, "f": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.And.__init__": {"tf": 1}, "snuba_sdk.Or.__init__": {"tf": 1}, "snuba_sdk.Request.__init__": {"tf": 1.4142135623730951}}, "df": 3}}}}}, "l": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Request.to_dict": {"tf": 1}, "snuba_sdk.Request.print": {"tf": 1}}, "df": 2}}}}, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Condition.__init__": {"tf": 2.449489742783178}, "snuba_sdk.CurriedFunction.__init__": {"tf": 2.449489742783178}, "snuba_sdk.Formula.__init__": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 2.449489742783178}, "snuba_sdk.Lambda.__init__": {"tf": 1}, "snuba_sdk.OrderBy.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Query.__init__": {"tf": 2.449489742783178}, "snuba_sdk.Query.set_select": {"tf": 1.7320508075688772}, "snuba_sdk.Query.set_groupby": {"tf": 1.7320508075688772}}, "df": 9}}}}}}}, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Condition.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Entity.__init__": {"tf": 1}, "snuba_sdk.Formula.__init__": {"tf": 1}, "snuba_sdk.Formula.set_parameters": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1.4142135623730951}}, "df": 6}}}, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Request.__init__": {"tf": 1.4142135623730951}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.Formula.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Formula.set_parameters": {"tf": 2}, "snuba_sdk.Formula.set_filters": {"tf": 1.4142135623730951}, "snuba_sdk.Formula.set_groupby": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.set_query": {"tf": 1}}, "df": 6}}}}}}, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Formula.__init__": {"tf": 1}, "snuba_sdk.Formula.set_filters": {"tf": 1}, "snuba_sdk.Timeseries.__init__": {"tf": 1}, "snuba_sdk.Timeseries.set_filters": {"tf": 1}}, "df": 4}}}}}}}, "g": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.And.__init__": {"tf": 1}, "snuba_sdk.Or.__init__": {"tf": 1}, "snuba_sdk.Request.__init__": {"tf": 1.7320508075688772}}, "df": 3}, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Formula.__init__": {"tf": 1}, "snuba_sdk.Formula.set_groupby": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1}, "snuba_sdk.Query.set_groupby": {"tf": 1}, "snuba_sdk.Timeseries.__init__": {"tf": 1}, "snuba_sdk.Timeseries.set_groupby": {"tf": 1}}, "df": 6}}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Granularity.__init__": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_granularity": {"tf": 1}, "snuba_sdk.Rollup.__init__": {"tf": 1}}, "df": 4}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.BooleanCondition.__init__": {"tf": 1}, "snuba_sdk.Condition.__init__": {"tf": 1.4142135623730951}}, "df": 2, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Formula.__init__": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}, "f": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MetricsQuery.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.set_offset": {"tf": 1}, "snuba_sdk.Offset.__init__": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_offset": {"tf": 1}}, "df": 5}}}}}, "r": {"docs": {}, "df": 0, "g": {"docs": {"snuba_sdk.MetricsScope.__init__": {"tf": 1}}, "df": 1}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.OrderBy.__init__": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 2}, "snuba_sdk.Query.set_orderby": {"tf": 1.7320508075688772}, "snuba_sdk.Query.set_limitby": {"tf": 1}, "snuba_sdk.Rollup.__init__": {"tf": 1}}, "df": 5}}}}}}}, "r": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Condition.__init__": {"tf": 1}, "snuba_sdk.Relationship.__init__": {"tf": 1}}, "df": 2}}, "u": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Flags.__init__": {"tf": 1}}, "df": 1}}, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.Join.__init__": {"tf": 1}}, "df": 1, "s": {"docs": {"snuba_sdk.Join.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Query.__init__": {"tf": 1}, "snuba_sdk.Query.set_match": {"tf": 1}}, "df": 3}}}}}}}}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Request.__init__": {"tf": 1}}, "df": 1}}}}}}, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.MetricsQuery.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.set_rollup": {"tf": 1.4142135623730951}}, "df": 2}}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Condition.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Formula.__init__": {"tf": 1}, "snuba_sdk.Formula.set_parameters": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Granularity.__init__": {"tf": 1}, "snuba_sdk.Limit.__init__": {"tf": 1}, "snuba_sdk.LimitBy.__init__": {"tf": 1}, "snuba_sdk.Metric.__init__": {"tf": 1}, "snuba_sdk.Metric.set_id": {"tf": 1}, "snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.set_limit": {"tf": 1}, "snuba_sdk.MetricsQuery.set_offset": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}, "snuba_sdk.Offset.__init__": {"tf": 1}, "snuba_sdk.Query.set_limit": {"tf": 1}, "snuba_sdk.Query.set_offset": {"tf": 1}, "snuba_sdk.Query.set_granularity": {"tf": 1}, "snuba_sdk.Request.__init__": {"tf": 1}, "snuba_sdk.Rollup.__init__": {"tf": 1.4142135623730951}}, "df": 20, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.Rollup.__init__": {"tf": 1}}, "df": 1}}}}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.CurriedFunction.__init__": {"tf": 1}}, "df": 1}}}}}}}}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}}, "df": 2}}}}}}, "d": {"docs": {"snuba_sdk.Metric.__init__": {"tf": 1}, "snuba_sdk.Metric.set_id": {"tf": 1}, "snuba_sdk.MetricsScope.__init__": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}, "snuba_sdk.Request.__init__": {"tf": 1}}, "df": 5, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.CurriedFunction.__init__": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1}}, "df": 2, "s": {"docs": {"snuba_sdk.Lambda.__init__": {"tf": 1}}, "df": 1}}}}}}}}}, "s": {"docs": {"snuba_sdk.MetricsScope.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Request.__init__": {"tf": 1}}, "df": 2}}}, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Condition.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Function.__init__": {"tf": 1.4142135623730951}}, "df": 3, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Condition.__init__": {"tf": 2.449489742783178}, "snuba_sdk.CurriedFunction.__init__": {"tf": 3}, "snuba_sdk.Function.__init__": {"tf": 2.449489742783178}, "snuba_sdk.MetricsQuery.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.set_start": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.set_end": {"tf": 1.4142135623730951}}, "df": 6}}}}}, "a": {"docs": {"snuba_sdk.Entity.__init__": {"tf": 1}}, "df": 1, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Request.__init__": {"tf": 1}}, "df": 1}}}}}}, "e": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "g": {"docs": {"snuba_sdk.Flags.__init__": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Flags.__init__": {"tf": 1}}, "df": 1}}, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.Flags.to_dict": {"tf": 1}, "snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}, "snuba_sdk.MetricsQuery.serialize_to_mql": {"tf": 1.4142135623730951}, "snuba_sdk.Request.__init__": {"tf": 1}, "snuba_sdk.Request.to_dict": {"tf": 1.4142135623730951}}, "df": 6}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.OrderBy.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Rollup.__init__": {"tf": 1}}, "df": 2}}}}}}}}}, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.CurriedFunction.__init__": {"tf": 1}, "snuba_sdk.Formula.__init__": {"tf": 1}, "snuba_sdk.Formula.set_parameters": {"tf": 1}, "snuba_sdk.Function.__init__": {"tf": 1}}, "df": 4}}}}}, "s": {"docs": {"snuba_sdk.Timeseries.__init__": {"tf": 1}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 1}}, "df": 2}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Request.__init__": {"tf": 1}}, "df": 1}}}}}, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"snuba_sdk.Metric.__init__": {"tf": 1}, "snuba_sdk.Metric.set_public_name": {"tf": 1}}, "df": 2}}}}}, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "j": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MetricsScope.__init__": {"tf": 1}}, "df": 1}}}}}}}, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.Entity.__init__": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {"snuba_sdk.Metric.__init__": {"tf": 1}, "snuba_sdk.Metric.set_mri": {"tf": 1}}, "df": 2}}, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"snuba_sdk.Metric.set_mri": {"tf": 1}, "snuba_sdk.Metric.set_public_name": {"tf": 1}, "snuba_sdk.Metric.set_id": {"tf": 1}, "snuba_sdk.Metric.set_entity": {"tf": 1}, "snuba_sdk.Timeseries.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries.set_metric": {"tf": 1.4142135623730951}}, "df": 6, "s": {"docs": {"snuba_sdk.MetricsQuery.set_query": {"tf": 1}, "snuba_sdk.MetricsQuery.set_start": {"tf": 1}, "snuba_sdk.MetricsQuery.set_end": {"tf": 1}, "snuba_sdk.MetricsQuery.set_rollup": {"tf": 1}, "snuba_sdk.MetricsQuery.set_scope": {"tf": 1}, "snuba_sdk.MetricsQuery.set_limit": {"tf": 1}, "snuba_sdk.MetricsQuery.set_offset": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}}, "df": 8, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.set_scope": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}}, "df": 3}}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.MetricsQuery.set_query": {"tf": 1}, "snuba_sdk.MetricsQuery.set_start": {"tf": 1}, "snuba_sdk.MetricsQuery.set_end": {"tf": 1}, "snuba_sdk.MetricsQuery.set_rollup": {"tf": 1}, "snuba_sdk.MetricsQuery.set_scope": {"tf": 1}, "snuba_sdk.MetricsQuery.set_limit": {"tf": 1}, "snuba_sdk.MetricsQuery.set_offset": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}}, "df": 8}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}}, "df": 2}}}}}}, "t": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"snuba_sdk.Query.__init__": {"tf": 1}, "snuba_sdk.Query.set_match": {"tf": 1}}, "df": 2}}}}, "q": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.Request.to_dict": {"tf": 1}, "snuba_sdk.Request.print": {"tf": 1}}, "df": 2}}}, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Flags.__init__": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_totals": {"tf": 1}, "snuba_sdk.Rollup.__init__": {"tf": 1}, "snuba_sdk.Totals.__init__": {"tf": 1}}, "df": 5}}}}}, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "o": {"docs": {"snuba_sdk.Flags.__init__": {"tf": 1}}, "df": 1}}}}, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Formula.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Formula.set_parameters": {"tf": 1.4142135623730951}, "snuba_sdk.Metric.set_mri": {"tf": 1}, "snuba_sdk.Metric.set_public_name": {"tf": 1}, "snuba_sdk.Metric.set_id": {"tf": 1}, "snuba_sdk.Metric.set_entity": {"tf": 1}, "snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.set_query": {"tf": 1}, "snuba_sdk.MetricsQuery.set_rollup": {"tf": 1}, "snuba_sdk.MetricsQuery.set_scope": {"tf": 1}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1}, "snuba_sdk.Timeseries.__init__": {"tf": 1}, "snuba_sdk.Timeseries.set_metric": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries.set_filters": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries.set_groupby": {"tf": 1.4142135623730951}}, "df": 16}}}}}}}}}, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Lambda.__init__": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Request.__init__": {"tf": 1}}, "df": 1}}}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.MetricsQuery.__init__": {"tf": 1}, "snuba_sdk.MetricsQuery.set_query": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery.set_start": {"tf": 1}, "snuba_sdk.MetricsQuery.set_end": {"tf": 1}, "snuba_sdk.MetricsQuery.set_rollup": {"tf": 1}, "snuba_sdk.MetricsQuery.set_scope": {"tf": 1}, "snuba_sdk.MetricsQuery.set_limit": {"tf": 1}, "snuba_sdk.MetricsQuery.set_offset": {"tf": 1}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1}, "snuba_sdk.Query.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_match": {"tf": 2}, "snuba_sdk.Query.set_select": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_groupby": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_array_join": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_where": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_having": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_orderby": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_limitby": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_limit": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_offset": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_granularity": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_totals": {"tf": 1.4142135623730951}, "snuba_sdk.Request.__init__": {"tf": 1.4142135623730951}}, "df": 23}}}}}, "j": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Query.__init__": {"tf": 1.4142135623730951}, "snuba_sdk.Query.set_match": {"tf": 1}, "snuba_sdk.Query.set_array_join": {"tf": 1}}, "df": 3}}}}, "w": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Query.__init__": {"tf": 1}}, "df": 1}}}}}, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"snuba_sdk.Query.__init__": {"tf": 1}}, "df": 1}}}}}}}}, "bases": {"root": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.And": {"tf": 1}, "snuba_sdk.BooleanCondition": {"tf": 1}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Condition": {"tf": 1}, "snuba_sdk.CurriedFunction": {"tf": 1}, "snuba_sdk.Entity": {"tf": 1}, "snuba_sdk.Function": {"tf": 1}, "snuba_sdk.Granularity": {"tf": 1}, "snuba_sdk.Identifier": {"tf": 1}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Lambda": {"tf": 1}, "snuba_sdk.Limit": {"tf": 1}, "snuba_sdk.LimitBy": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Offset": {"tf": 1}, "snuba_sdk.Or": {"tf": 1}, "snuba_sdk.OrderBy": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}, "snuba_sdk.Totals": {"tf": 1}}, "df": 21}}}}, "d": {"docs": {}, "df": 0, "k": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.And": {"tf": 1}, "snuba_sdk.BooleanCondition": {"tf": 1}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Condition": {"tf": 1}, "snuba_sdk.CurriedFunction": {"tf": 1}, "snuba_sdk.Entity": {"tf": 1}, "snuba_sdk.Function": {"tf": 1}, "snuba_sdk.Granularity": {"tf": 1}, "snuba_sdk.Identifier": {"tf": 1}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Lambda": {"tf": 1}, "snuba_sdk.Limit": {"tf": 1}, "snuba_sdk.LimitBy": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Offset": {"tf": 1}, "snuba_sdk.Or": {"tf": 1}, "snuba_sdk.OrderBy": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}, "snuba_sdk.Totals": {"tf": 1}}, "df": 21}}}, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.BooleanCondition": {"tf": 1}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Condition": {"tf": 1}, "snuba_sdk.CurriedFunction": {"tf": 1}, "snuba_sdk.Entity": {"tf": 1}, "snuba_sdk.Granularity": {"tf": 1}, "snuba_sdk.Identifier": {"tf": 1}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Lambda": {"tf": 1}, "snuba_sdk.Limit": {"tf": 1}, "snuba_sdk.LimitBy": {"tf": 1}, "snuba_sdk.Offset": {"tf": 1}, "snuba_sdk.OrderBy": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}, "snuba_sdk.Totals": {"tf": 1}}, "df": 16, "s": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.BooleanCondition": {"tf": 1}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Condition": {"tf": 1}, "snuba_sdk.CurriedFunction": {"tf": 1}, "snuba_sdk.Entity": {"tf": 1}, "snuba_sdk.Granularity": {"tf": 1}, "snuba_sdk.Identifier": {"tf": 1}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Lambda": {"tf": 1}, "snuba_sdk.Limit": {"tf": 1}, "snuba_sdk.LimitBy": {"tf": 1}, "snuba_sdk.Offset": {"tf": 1}, "snuba_sdk.OrderBy": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}, "snuba_sdk.Totals": {"tf": 1}}, "df": 16}}}}}}}}}}, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {"snuba_sdk.ArithmeticOperator": {"tf": 1.4142135623730951}, "snuba_sdk.BooleanOp": {"tf": 1.4142135623730951}, "snuba_sdk.Direction": {"tf": 1.4142135623730951}, "snuba_sdk.Op": {"tf": 1.4142135623730951}}, "df": 4}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.And": {"tf": 1}, "snuba_sdk.Or": {"tf": 1}}, "df": 2}}}}}}}}}, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Function": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}, "b": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.And": {"tf": 1}, "snuba_sdk.Or": {"tf": 1}}, "df": 2}}}}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}}, "df": 2}}}}}}}}}, "f": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Function": {"tf": 1}}, "df": 1}}}}}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}}, "df": 2}}}}}}}, "doc": {"root": {"0": {"0": {"0": {"0": {"0": {"0": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "1": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1, "t": {"0": {"0": {"docs": {}, "df": 0, ":": {"0": {"0": {"docs": {}, "df": 0, ":": {"0": {"0": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}, "docs": {"snuba_sdk": {"tf": 2.23606797749979}}, "df": 1}, "1": {"0": {"docs": {"snuba_sdk": {"tf": 1.7320508075688772}}, "df": 1}, "2": {"3": {"4": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"snuba_sdk": {"tf": 3}}, "df": 1}, "2": {"0": {"2": {"1": {"docs": {"snuba_sdk": {"tf": 1.7320508075688772}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"snuba_sdk": {"tf": 2}}, "df": 1}, "3": {"6": {"0": {"0": {"docs": {"snuba_sdk": {"tf": 1.7320508075688772}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "9": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}}, "df": 1}, "docs": {"snuba_sdk": {"tf": 1.7320508075688772}}, "df": 1}, "docs": {"snuba_sdk": {"tf": 29.154759474226502}, "snuba_sdk.AliasedExpression": {"tf": 5}, "snuba_sdk.AliasedExpression.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.AliasedExpression.exp": {"tf": 1.7320508075688772}, "snuba_sdk.AliasedExpression.alias": {"tf": 1.7320508075688772}, "snuba_sdk.AliasedExpression.validate": {"tf": 1.7320508075688772}, "snuba_sdk.And": {"tf": 1.7320508075688772}, "snuba_sdk.And.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.And.op": {"tf": 1.7320508075688772}, "snuba_sdk.And.conditions": {"tf": 1.7320508075688772}, "snuba_sdk.ArithmeticOperator": {"tf": 1.7320508075688772}, "snuba_sdk.ArithmeticOperator.PLUS": {"tf": 1.7320508075688772}, "snuba_sdk.ArithmeticOperator.MINUS": {"tf": 1.7320508075688772}, "snuba_sdk.ArithmeticOperator.MULTIPLY": {"tf": 1.7320508075688772}, "snuba_sdk.ArithmeticOperator.DIVIDE": {"tf": 1.7320508075688772}, "snuba_sdk.BooleanCondition": {"tf": 1.7320508075688772}, "snuba_sdk.BooleanCondition.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.BooleanCondition.op": {"tf": 1.7320508075688772}, "snuba_sdk.BooleanCondition.conditions": {"tf": 1.7320508075688772}, "snuba_sdk.BooleanCondition.validate": {"tf": 1.7320508075688772}, "snuba_sdk.BooleanOp": {"tf": 1.7320508075688772}, "snuba_sdk.BooleanOp.AND": {"tf": 1.7320508075688772}, "snuba_sdk.BooleanOp.OR": {"tf": 1.7320508075688772}, "snuba_sdk.Column": {"tf": 5.744562646538029}, "snuba_sdk.Column.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Column.name": {"tf": 1.7320508075688772}, "snuba_sdk.Column.entity": {"tf": 1.7320508075688772}, "snuba_sdk.Column.subscriptable": {"tf": 1.7320508075688772}, "snuba_sdk.Column.key": {"tf": 1.7320508075688772}, "snuba_sdk.Column.validate": {"tf": 1.7320508075688772}, "snuba_sdk.Column.validate_data_model": {"tf": 1.7320508075688772}, "snuba_sdk.Condition": {"tf": 1.7320508075688772}, "snuba_sdk.Condition.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Condition.lhs": {"tf": 1.7320508075688772}, "snuba_sdk.Condition.op": {"tf": 1.7320508075688772}, "snuba_sdk.Condition.rhs": {"tf": 1.7320508075688772}, "snuba_sdk.Condition.validate": {"tf": 1.7320508075688772}, "snuba_sdk.CurriedFunction": {"tf": 1.7320508075688772}, "snuba_sdk.CurriedFunction.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.CurriedFunction.function": {"tf": 1.7320508075688772}, "snuba_sdk.CurriedFunction.initializers": {"tf": 1.7320508075688772}, "snuba_sdk.CurriedFunction.parameters": {"tf": 1.7320508075688772}, "snuba_sdk.CurriedFunction.alias": {"tf": 1.7320508075688772}, "snuba_sdk.CurriedFunction.validate": {"tf": 1.7320508075688772}, "snuba_sdk.Direction": {"tf": 1.7320508075688772}, "snuba_sdk.Direction.ASC": {"tf": 1.7320508075688772}, "snuba_sdk.Direction.DESC": {"tf": 1.7320508075688772}, "snuba_sdk.Entity": {"tf": 1.7320508075688772}, "snuba_sdk.Entity.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Entity.name": {"tf": 1.7320508075688772}, "snuba_sdk.Entity.alias": {"tf": 1.7320508075688772}, "snuba_sdk.Entity.sample": {"tf": 1.7320508075688772}, "snuba_sdk.Entity.data_model": {"tf": 1.7320508075688772}, "snuba_sdk.Entity.validate": {"tf": 1.7320508075688772}, "snuba_sdk.Flags": {"tf": 1.7320508075688772}, "snuba_sdk.Flags.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Flags.totals": {"tf": 1.7320508075688772}, "snuba_sdk.Flags.consistent": {"tf": 1.7320508075688772}, "snuba_sdk.Flags.turbo": {"tf": 1.7320508075688772}, "snuba_sdk.Flags.debug": {"tf": 1.7320508075688772}, "snuba_sdk.Flags.dry_run": {"tf": 1.7320508075688772}, "snuba_sdk.Flags.legacy": {"tf": 1.7320508075688772}, "snuba_sdk.Flags.validate": {"tf": 1.7320508075688772}, "snuba_sdk.Flags.to_dict": {"tf": 1.7320508075688772}, "snuba_sdk.Formula": {"tf": 1.7320508075688772}, "snuba_sdk.Formula.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Formula.function_name": {"tf": 1.7320508075688772}, "snuba_sdk.Formula.parameters": {"tf": 1.7320508075688772}, "snuba_sdk.Formula.filters": {"tf": 1.7320508075688772}, "snuba_sdk.Formula.groupby": {"tf": 1.7320508075688772}, "snuba_sdk.Formula.validate": {"tf": 1.7320508075688772}, "snuba_sdk.Formula.set_parameters": {"tf": 1.7320508075688772}, "snuba_sdk.Formula.set_filters": {"tf": 1.7320508075688772}, "snuba_sdk.Formula.set_groupby": {"tf": 1.7320508075688772}, "snuba_sdk.Function": {"tf": 1.7320508075688772}, "snuba_sdk.Function.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Function.initializers": {"tf": 1.7320508075688772}, "snuba_sdk.Granularity": {"tf": 1.7320508075688772}, "snuba_sdk.Granularity.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Granularity.granularity": {"tf": 1.7320508075688772}, "snuba_sdk.Granularity.validate": {"tf": 1.7320508075688772}, "snuba_sdk.Identifier": {"tf": 1.7320508075688772}, "snuba_sdk.Identifier.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Identifier.name": {"tf": 1.7320508075688772}, "snuba_sdk.Identifier.validate": {"tf": 1.7320508075688772}, "snuba_sdk.Join": {"tf": 5}, "snuba_sdk.Join.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Join.relationships": {"tf": 1.7320508075688772}, "snuba_sdk.Join.get_alias_mappings": {"tf": 1.7320508075688772}, "snuba_sdk.Join.get_entities": {"tf": 1.7320508075688772}, "snuba_sdk.Join.validate": {"tf": 1.7320508075688772}, "snuba_sdk.Lambda": {"tf": 1.7320508075688772}, "snuba_sdk.Lambda.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Lambda.identifiers": {"tf": 1.7320508075688772}, "snuba_sdk.Lambda.transformation": {"tf": 1.7320508075688772}, "snuba_sdk.Lambda.validate": {"tf": 1.7320508075688772}, "snuba_sdk.Limit": {"tf": 1.7320508075688772}, "snuba_sdk.Limit.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Limit.limit": {"tf": 1.7320508075688772}, "snuba_sdk.Limit.validate": {"tf": 1.7320508075688772}, "snuba_sdk.LimitBy": {"tf": 1.7320508075688772}, "snuba_sdk.LimitBy.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.LimitBy.columns": {"tf": 1.7320508075688772}, "snuba_sdk.LimitBy.count": {"tf": 1.7320508075688772}, "snuba_sdk.LimitBy.validate": {"tf": 1.7320508075688772}, "snuba_sdk.Metric": {"tf": 1.7320508075688772}, "snuba_sdk.Metric.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Metric.public_name": {"tf": 1.7320508075688772}, "snuba_sdk.Metric.mri": {"tf": 1.7320508075688772}, "snuba_sdk.Metric.id": {"tf": 1.7320508075688772}, "snuba_sdk.Metric.entity": {"tf": 1.7320508075688772}, "snuba_sdk.Metric.get_fields": {"tf": 1.7320508075688772}, "snuba_sdk.Metric.validate": {"tf": 1.7320508075688772}, "snuba_sdk.Metric.set_mri": {"tf": 1.7320508075688772}, "snuba_sdk.Metric.set_public_name": {"tf": 1.7320508075688772}, "snuba_sdk.Metric.set_id": {"tf": 1.7320508075688772}, "snuba_sdk.Metric.set_entity": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery": {"tf": 2.449489742783178}, "snuba_sdk.MetricsQuery.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.query": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.start": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.end": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.rollup": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.scope": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.limit": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.offset": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.indexer_mappings": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.set_query": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.set_start": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.set_end": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.set_rollup": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.set_scope": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.set_limit": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.set_offset": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.set_indexer_mappings": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.validate": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.serialize": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.print": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery.serialize_to_mql": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsScope": {"tf": 2.449489742783178}, "snuba_sdk.MetricsScope.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsScope.org_ids": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsScope.project_ids": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsScope.use_case_id": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsScope.validate": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsScope.set_use_case_id": {"tf": 1.7320508075688772}, "snuba_sdk.MQLContext": {"tf": 1.7320508075688772}, "snuba_sdk.Offset": {"tf": 1.7320508075688772}, "snuba_sdk.Offset.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Offset.offset": {"tf": 1.7320508075688772}, "snuba_sdk.Offset.validate": {"tf": 1.7320508075688772}, "snuba_sdk.Op": {"tf": 1.7320508075688772}, "snuba_sdk.Op.GT": {"tf": 1.7320508075688772}, "snuba_sdk.Op.LT": {"tf": 1.7320508075688772}, "snuba_sdk.Op.GTE": {"tf": 1.7320508075688772}, "snuba_sdk.Op.LTE": {"tf": 1.7320508075688772}, "snuba_sdk.Op.EQ": {"tf": 1.7320508075688772}, "snuba_sdk.Op.NEQ": {"tf": 1.7320508075688772}, "snuba_sdk.Op.IN": {"tf": 1.7320508075688772}, "snuba_sdk.Op.NOT_IN": {"tf": 1.7320508075688772}, "snuba_sdk.Op.LIKE": {"tf": 1.7320508075688772}, "snuba_sdk.Op.NOT_LIKE": {"tf": 1.7320508075688772}, "snuba_sdk.Op.IS_NULL": {"tf": 1.7320508075688772}, "snuba_sdk.Op.IS_NOT_NULL": {"tf": 1.7320508075688772}, "snuba_sdk.Op.NOT": {"tf": 1.7320508075688772}, "snuba_sdk.Or": {"tf": 1.7320508075688772}, "snuba_sdk.Or.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Or.op": {"tf": 1.7320508075688772}, "snuba_sdk.Or.conditions": {"tf": 1.7320508075688772}, "snuba_sdk.OrderBy": {"tf": 1.7320508075688772}, "snuba_sdk.OrderBy.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.OrderBy.exp": {"tf": 1.7320508075688772}, "snuba_sdk.OrderBy.direction": {"tf": 1.7320508075688772}, "snuba_sdk.OrderBy.validate": {"tf": 1.7320508075688772}, "snuba_sdk.Query": {"tf": 1.7320508075688772}, "snuba_sdk.Query.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Query.match": {"tf": 1.7320508075688772}, "snuba_sdk.Query.select": {"tf": 1.7320508075688772}, "snuba_sdk.Query.groupby": {"tf": 1.7320508075688772}, "snuba_sdk.Query.array_join": {"tf": 1.7320508075688772}, "snuba_sdk.Query.where": {"tf": 1.7320508075688772}, "snuba_sdk.Query.having": {"tf": 1.7320508075688772}, "snuba_sdk.Query.orderby": {"tf": 1.7320508075688772}, "snuba_sdk.Query.limitby": {"tf": 1.7320508075688772}, "snuba_sdk.Query.limit": {"tf": 1.7320508075688772}, "snuba_sdk.Query.offset": {"tf": 1.7320508075688772}, "snuba_sdk.Query.granularity": {"tf": 1.7320508075688772}, "snuba_sdk.Query.totals": {"tf": 1.7320508075688772}, "snuba_sdk.Query.set_match": {"tf": 1.7320508075688772}, "snuba_sdk.Query.set_select": {"tf": 1.7320508075688772}, "snuba_sdk.Query.set_groupby": {"tf": 1.7320508075688772}, "snuba_sdk.Query.set_array_join": {"tf": 1.7320508075688772}, "snuba_sdk.Query.set_where": {"tf": 1.7320508075688772}, "snuba_sdk.Query.set_having": {"tf": 1.7320508075688772}, "snuba_sdk.Query.set_orderby": {"tf": 1.7320508075688772}, "snuba_sdk.Query.set_limitby": {"tf": 1.7320508075688772}, "snuba_sdk.Query.set_limit": {"tf": 1.7320508075688772}, "snuba_sdk.Query.set_offset": {"tf": 1.7320508075688772}, "snuba_sdk.Query.set_granularity": {"tf": 1.7320508075688772}, "snuba_sdk.Query.set_totals": {"tf": 1.7320508075688772}, "snuba_sdk.Query.validate": {"tf": 1.7320508075688772}, "snuba_sdk.Query.serialize": {"tf": 1.7320508075688772}, "snuba_sdk.Query.print": {"tf": 1.7320508075688772}, "snuba_sdk.Relationship": {"tf": 5.916079783099616}, "snuba_sdk.Relationship.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Relationship.lhs": {"tf": 1.7320508075688772}, "snuba_sdk.Relationship.name": {"tf": 1.7320508075688772}, "snuba_sdk.Relationship.rhs": {"tf": 1.7320508075688772}, "snuba_sdk.Relationship.validate": {"tf": 1.7320508075688772}, "snuba_sdk.Request": {"tf": 1.7320508075688772}, "snuba_sdk.Request.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Request.dataset": {"tf": 1.7320508075688772}, "snuba_sdk.Request.app_id": {"tf": 1.7320508075688772}, "snuba_sdk.Request.query": {"tf": 1.7320508075688772}, "snuba_sdk.Request.flags": {"tf": 1.7320508075688772}, "snuba_sdk.Request.parent_api": {"tf": 1.7320508075688772}, "snuba_sdk.Request.tenant_ids": {"tf": 1.7320508075688772}, "snuba_sdk.Request.validate": {"tf": 1.7320508075688772}, "snuba_sdk.Request.to_dict": {"tf": 1.7320508075688772}, "snuba_sdk.Request.serialize": {"tf": 1.7320508075688772}, "snuba_sdk.Request.serialize_mql": {"tf": 1.7320508075688772}, "snuba_sdk.Request.print": {"tf": 1.7320508075688772}, "snuba_sdk.Rollup": {"tf": 1.7320508075688772}, "snuba_sdk.Rollup.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Rollup.interval": {"tf": 1.7320508075688772}, "snuba_sdk.Rollup.totals": {"tf": 1.7320508075688772}, "snuba_sdk.Rollup.orderby": {"tf": 1.7320508075688772}, "snuba_sdk.Rollup.granularity": {"tf": 1.7320508075688772}, "snuba_sdk.Rollup.validate": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries.metric": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries.aggregate": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries.aggregate_params": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries.filters": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries.groupby": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries.get_fields": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries.validate": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries.set_metric": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries.set_aggregate": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries.set_filters": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries.set_groupby": {"tf": 1.7320508075688772}, "snuba_sdk.Totals": {"tf": 1.7320508075688772}, "snuba_sdk.Totals.__init__": {"tf": 1.7320508075688772}, "snuba_sdk.Totals.totals": {"tf": 1.7320508075688772}, "snuba_sdk.Totals.validate": {"tf": 1.7320508075688772}}, "df": 246, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}}, "df": 1}, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk": {"tf": 1.7320508075688772}}, "df": 1}}}}, "t": {"docs": {"snuba_sdk": {"tf": 2.449489742783178}, "snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1.4142135623730951}, "snuba_sdk.Query": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 6}, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1, "d": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}}}}}}}, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.MetricsScope": {"tf": 1}}, "df": 2, "l": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1}}}}}}}}, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Join": {"tf": 1}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Rollup": {"tf": 1}}, "df": 1}}}}}}, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"snuba_sdk.Column": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 2}}}}}, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk": {"tf": 2.449489742783178}, "snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}}, "df": 4}}}, "q": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}}, "df": 4}}}, "d": {"docs": {}, "df": 0, "k": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}}, "df": 1}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 2}}}, "c": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1}}}, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}}}}}, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Column": {"tf": 1.4142135623730951}}, "df": 1, "[": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Column": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Join": {"tf": 1}}, "df": 1}}}, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1}}, "df": 2}, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1.4142135623730951}}, "df": 2}}, "c": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}}}}}}, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Join": {"tf": 1}}, "df": 1}}, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1}}}}}, "o": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Query": {"tf": 1.4142135623730951}}, "df": 2}, "y": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "x": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}}}}, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.Relationship": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1.4142135623730951}}, "df": 2}}}}}}, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.Column": {"tf": 1}}, "df": 2}, "v": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1.4142135623730951}}, "df": 3}}}, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "w": {"docs": {"snuba_sdk.Rollup": {"tf": 1}}, "df": 1}}}, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1.4142135623730951}, "snuba_sdk.Rollup": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 5, "m": {"docs": {"snuba_sdk.Column": {"tf": 1}}, "df": 1, "a": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.Column": {"tf": 1}}, "df": 2, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk": {"tf": 2}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 2, "s": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Query": {"tf": 1.4142135623730951}}, "df": 3}}}}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk": {"tf": 2}}, "df": 1}}}}, "s": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1, "s": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.Timeseries": {"tf": 1}}, "df": 1}}}}}}, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1.4142135623730951}}, "df": 2, "s": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}}}}, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.MetricsScope": {"tf": 1}}, "df": 2}}}, "e": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 3.4641016151377544}, "snuba_sdk.AliasedExpression": {"tf": 2.6457513110645907}, "snuba_sdk.Column": {"tf": 3.1622776601683795}, "snuba_sdk.Join": {"tf": 2.23606797749979}, "snuba_sdk.MetricsQuery": {"tf": 2}, "snuba_sdk.MetricsScope": {"tf": 3}, "snuba_sdk.Query": {"tf": 2}, "snuba_sdk.Relationship": {"tf": 3.872983346207417}, "snuba_sdk.Rollup": {"tf": 3.3166247903554}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 10, "n": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1.4142135623730951}}, "df": 3}, "r": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}}, "df": 1}}, "s": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1}}, "m": {"docs": {"snuba_sdk.Query": {"tf": 1}}, "df": 1}, "y": {"docs": {"snuba_sdk.Query": {"tf": 1}}, "df": 1}}, "a": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Join": {"tf": 1.4142135623730951}, "snuba_sdk.Metric": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.MetricsScope": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1}}, "df": 9}}, "i": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsScope": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 6}}, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "w": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1, "n": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "o": {"docs": {"snuba_sdk": {"tf": 2.449489742783178}, "snuba_sdk.AliasedExpression": {"tf": 2}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 2.23606797749979}, "snuba_sdk.MetricsScope": {"tf": 2}, "snuba_sdk.Query": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1.4142135623730951}, "snuba_sdk.Rollup": {"tf": 1.4142135623730951}}, "df": 8, "o": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Rollup": {"tf": 2.23606797749979}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}}}, "g": {"docs": {"snuba_sdk.Timeseries": {"tf": 1.7320508075688772}}, "df": 1, "s": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 2.449489742783178}}, "df": 1}}}, "m": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Rollup": {"tf": 1}}, "df": 1, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk": {"tf": 1.7320508075688772}}, "df": 1}}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 2}, "snuba_sdk.Rollup": {"tf": 2}, "snuba_sdk.Timeseries": {"tf": 1.4142135623730951}}, "df": 3}}}}}}}}}, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 1.7320508075688772}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}, "snuba_sdk.Rollup": {"tf": 1.4142135623730951}}, "df": 2}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1, "d": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 2}}, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Query": {"tf": 1}}, "df": 1}}, "n": {"docs": {}, "df": 0, "g": {"docs": {"snuba_sdk.Query": {"tf": 1}}, "df": 1}}}}}}}}}, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1}}}}}}, "w": {"docs": {}, "df": 0, "o": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}}, "df": 3}}, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Relationship": {"tf": 1}}, "df": 1}}}}}, "d": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}}}}}}}, "w": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}, "e": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Relationship": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}}, "df": 2, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsScope": {"tf": 1}}, "df": 2}}}, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Column": {"tf": 1}}, "df": 1}}}}}, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 2}}, "df": 1}}}}}}}, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.Join": {"tf": 1.4142135623730951}}, "df": 2}}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}}, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk": {"tf": 1.7320508075688772}}, "df": 1}}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}}}}}}, "e": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "g": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}}, "df": 1}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1}}}}}, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.Relationship": {"tf": 1}}, "df": 1}}}}}}}, "e": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1, "x": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}}, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.AliasedExpression": {"tf": 2}}, "df": 2, "s": {"docs": {"snuba_sdk.Query": {"tf": 1}}, "df": 1}}}}}}}}, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.Column": {"tf": 1}}, "df": 1}}}}}}, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}}, "df": 1, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.Rollup": {"tf": 1}}, "df": 1}}}}, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}, "snuba_sdk.Column": {"tf": 1.4142135623730951}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 2}}, "df": 4}, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Join": {"tf": 1.4142135623730951}, "snuba_sdk.Relationship": {"tf": 1.7320508075688772}}, "df": 2}}}}}}, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.ArithmeticOperator": {"tf": 1}, "snuba_sdk.BooleanOp": {"tf": 1}, "snuba_sdk.Direction": {"tf": 1}, "snuba_sdk.Op": {"tf": 1}}, "df": 4}}}}}}}}}}, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk": {"tf": 1.7320508075688772}}, "df": 1, "s": {"docs": {"snuba_sdk": {"tf": 2.449489742783178}}, "df": 1}, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}}, "df": 1}}}}}}}}}, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 2}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.Relationship": {"tf": 1}}, "df": 1}}}}}}, "i": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk": {"tf": 2.8284271247461903}, "snuba_sdk.AliasedExpression": {"tf": 1.7320508075688772}, "snuba_sdk.Column": {"tf": 1.4142135623730951}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Metric": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 2}, "snuba_sdk.MetricsScope": {"tf": 1.4142135623730951}, "snuba_sdk.Query": {"tf": 1.7320508075688772}, "snuba_sdk.Rollup": {"tf": 2}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 10}, "d": {"docs": {"snuba_sdk": {"tf": 3}, "snuba_sdk.Metric": {"tf": 1}, "snuba_sdk.MetricsScope": {"tf": 1}}, "df": 3, "s": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}, "e": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1}}}, "n": {"docs": {"snuba_sdk": {"tf": 2.23606797749979}, "snuba_sdk.AliasedExpression": {"tf": 1.7320508075688772}, "snuba_sdk.Column": {"tf": 1.4142135623730951}, "snuba_sdk.Join": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsScope": {"tf": 1.4142135623730951}, "snuba_sdk.Relationship": {"tf": 1.7320508075688772}, "snuba_sdk.Rollup": {"tf": 1}}, "df": 8, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 2}}}}}}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Relationship": {"tf": 1}}, "df": 1}}}}}}}, "t": {"docs": {}, "df": 0, "o": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 2}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.Rollup": {"tf": 1.4142135623730951}}, "df": 1}}}}}}, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}}, "df": 4, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}}, "df": 4}}}}}}}}}}}}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "f": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.Column": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.Column": {"tf": 1}}, "df": 1}}}, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1}}}}}}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Query": {"tf": 1}}, "df": 1}}}}}}}, "r": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Rollup": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {"snuba_sdk": {"tf": 1.7320508075688772}, "snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.Metric": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsScope": {"tf": 1}, "snuba_sdk.Query": {"tf": 1.4142135623730951}, "snuba_sdk.Rollup": {"tf": 1}, "snuba_sdk.Timeseries": {"tf": 1.4142135623730951}}, "df": 8}, "f": {"docs": {"snuba_sdk": {"tf": 1.7320508075688772}, "snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.Column": {"tf": 1.4142135623730951}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1.4142135623730951}, "snuba_sdk.Rollup": {"tf": 1.4142135623730951}}, "df": 6}, "m": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}}, "df": 2}}}}}}}}}, "a": {"docs": {"snuba_sdk": {"tf": 3.7416573867739413}, "snuba_sdk.AliasedExpression": {"tf": 1.4142135623730951}, "snuba_sdk.Column": {"tf": 1.7320508075688772}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Metric": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 2.449489742783178}, "snuba_sdk.MetricsScope": {"tf": 1}, "snuba_sdk.Query": {"tf": 2}, "snuba_sdk.Relationship": {"tf": 1.7320508075688772}, "snuba_sdk.Rollup": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries": {"tf": 2.23606797749979}}, "df": 11, "l": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1.7320508075688772}}, "df": 1, "o": {"docs": {}, "df": 0, "w": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1.4142135623730951}}, "df": 1, "s": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 2}, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.Column": {"tf": 1}}, "df": 1}}}}}, "s": {"docs": {}, "df": 0, "o": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 3}}, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 2}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1.4142135623730951}}, "df": 3, "e": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Join": {"tf": 1}}, "df": 1}}}}}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "a": {"docs": {"snuba_sdk.Column": {"tf": 1}}, "df": 1}}}}, "p": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}}, "df": 1, "i": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}, "i": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1}}, "n": {"docs": {"snuba_sdk": {"tf": 2}, "snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.ArithmeticOperator": {"tf": 1}, "snuba_sdk.BooleanOp": {"tf": 1}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Direction": {"tf": 1}, "snuba_sdk.Op": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 10, "d": {"docs": {"snuba_sdk": {"tf": 2}, "snuba_sdk.Column": {"tf": 1.4142135623730951}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.MetricsScope": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1}}, "df": 7}, "y": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1.4142135623730951}, "snuba_sdk.Query": {"tf": 1.4142135623730951}}, "df": 3, "w": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}}, "df": 1}}}}}}}, "t": {"docs": {"snuba_sdk.Join": {"tf": 1}}, "df": 1, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Column": {"tf": 1}}, "df": 1, "s": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}}}}}, "s": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.Column": {"tf": 1}}, "df": 2}, "r": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Join": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.MetricsScope": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}}, "df": 6}}, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}}}}}}}, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "d": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1}}}}, "g": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Timeseries": {"tf": 1}}, "df": 1, "d": {"docs": {"snuba_sdk.Timeseries": {"tf": 1}}, "df": 1}}}}}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk": {"tf": 3.4641016151377544}, "snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 2, "s": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}}, "df": 1}}}}}}, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 5}}}}}, "s": {"docs": {"snuba_sdk.Metric": {"tf": 1}}, "df": 1}, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1}}}}}}}}}, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}}, "df": 1}}}}}}, "a": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}}, "s": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}}}}}, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Rollup": {"tf": 1}}, "df": 1, "s": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1.4142135623730951}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 2.23606797749979}}, "df": 2, "s": {"docs": {"snuba_sdk.Join": {"tf": 1.7320508075688772}}, "df": 1}}}}}}}}}}}, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 3, "s": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1}}, "df": 2}, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.Rollup": {"tf": 1}}, "df": 1}}}}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}}, "df": 1}}}}, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}}, "df": 4}, "d": {"docs": {"snuba_sdk.Join": {"tf": 1}}, "df": 1}}}}, "w": {"docs": {"snuba_sdk.Metric": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 2}}, "h": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Relationship": {"tf": 1}}, "df": 1}}, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.Rollup": {"tf": 1}}, "df": 1}}}}, "w": {"docs": {"snuba_sdk.Rollup": {"tf": 1}}, "df": 1}}}, "b": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 2.8284271247461903}, "snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Metric": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.MetricsScope": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1.4142135623730951}, "snuba_sdk.Rollup": {"tf": 2}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 11, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"snuba_sdk.Metric": {"tf": 1}}, "df": 1}}}, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Query": {"tf": 1.4142135623730951}}, "df": 1}}}}, "t": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Relationship": {"tf": 1}}, "df": 1}}}}}}, "u": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk": {"tf": 1.7320508075688772}, "snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 2}}}}, "y": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.MetricsScope": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1}, "snuba_sdk.Timeseries": {"tf": 1.7320508075688772}}, "df": 5}, "o": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {"snuba_sdk.Relationship": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"snuba_sdk.Timeseries": {"tf": 1}}, "df": 1}}}}}, "p": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "j": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk": {"tf": 1.7320508075688772}}, "df": 1}}}}, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}}, "df": 1}}}}, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}}, "df": 1, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}}, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}}, "df": 4}}}}}}}}}, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.Metric": {"tf": 1}}, "df": 1}}}}}}}, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Query": {"tf": 1}}, "df": 1}}}}}}}, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"snuba_sdk.Metric": {"tf": 1}}, "df": 1}}}}, "s": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk": {"tf": 2}}, "df": 1, "s": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 2}}}}}}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Column": {"tf": 1.4142135623730951}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.MetricsScope": {"tf": 1}}, "df": 3, "s": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1}}}}}, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.Relationship": {"tf": 1}}, "df": 1}}}}}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 3}}, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}}}}}}}, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk": {"tf": 3.3166247903554}, "snuba_sdk.Column": {"tf": 2.6457513110645907}}, "df": 2, "s": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}}, "df": 3}}}}, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Join": {"tf": 1}}, "df": 1}}}}}}}}, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}}, "df": 1}}}}}}, "p": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}}, "df": 2}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk": {"tf": 2.23606797749979}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Metric": {"tf": 1}, "snuba_sdk.MetricsScope": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1}, "snuba_sdk.Timeseries": {"tf": 1.4142135623730951}}, "df": 6}, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}}, "df": 2}}, "s": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}}, "s": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.Metric": {"tf": 1}}, "df": 2}}}}}}, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}}, "df": 1}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 2}, "snuba_sdk.MetricsScope": {"tf": 1}}, "df": 2}}}}}, "o": {"docs": {}, "df": 0, "f": {"docs": {"snuba_sdk": {"tf": 2.23606797749979}, "snuba_sdk.AliasedExpression": {"tf": 1.4142135623730951}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Join": {"tf": 1.4142135623730951}, "snuba_sdk.Metric": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 2}, "snuba_sdk.MetricsScope": {"tf": 1.4142135623730951}, "snuba_sdk.Query": {"tf": 1.7320508075688772}, "snuba_sdk.Relationship": {"tf": 2}, "snuba_sdk.Rollup": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries": {"tf": 2}}, "df": 11, "f": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk": {"tf": 2}}, "df": 1}}}}}, "b": {"docs": {}, "df": 0, "j": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}, "r": {"docs": {"snuba_sdk": {"tf": 1.7320508075688772}, "snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Metric": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}}, "df": 6, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}}}}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.Rollup": {"tf": 1}}, "df": 1}}, "b": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Rollup": {"tf": 1}}, "df": 1}}}}}}, "p": {"docs": {"snuba_sdk": {"tf": 2}}, "df": 1}, "n": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1}}, "df": 3, "c": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}, "l": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1}}, "df": 2}}, "e": {"docs": {"snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Metric": {"tf": 1}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 3}}, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk": {"tf": 1.7320508075688772}}, "df": 1}}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk.Column": {"tf": 1}, "snuba_sdk.MetricsScope": {"tf": 1}}, "df": 2}}}}, "w": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Relationship": {"tf": 1}}, "df": 1}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk": {"tf": 3.4641016151377544}, "snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 2}, "snuba_sdk.MetricsScope": {"tf": 1.7320508075688772}, "snuba_sdk.Query": {"tf": 2.23606797749979}, "snuba_sdk.Relationship": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1.7320508075688772}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 9}, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1}}, "df": 3}}}}}, "o": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk": {"tf": 7.874007874011811}}, "df": 1}}, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Relationship": {"tf": 1}}, "df": 1}}}}}}}, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1}}, "df": 2}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"snuba_sdk.Column": {"tf": 1}}, "df": 1}}}}}}, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.Column": {"tf": 1.7320508075688772}, "snuba_sdk.Metric": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1.7320508075688772}}, "df": 4, "s": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Join": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.MetricsScope": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}}, "df": 6}, "w": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}}, "df": 1}}, "e": {"docs": {}, "df": 0, "w": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}}, "df": 2}, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1}}}}}}}}}, "m": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}}, "df": 1}}}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}, "snuba_sdk.Join": {"tf": 1}}, "df": 2}}}, "k": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Join": {"tf": 1}}, "df": 1}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 2}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.Relationship": {"tf": 1}}, "df": 1}}}}, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}}, "df": 3}}}, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"snuba_sdk.Metric": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsScope": {"tf": 1}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 3, "s": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 2}}}}, "a": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {"snuba_sdk.Metric": {"tf": 1}}, "df": 1, "s": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1}}}}, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "q": {"docs": {"snuba_sdk": {"tf": 2.449489742783178}}, "df": 1, "u": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Timeseries": {"tf": 1}}, "df": 1}}}, "t": {"docs": {"snuba_sdk.Timeseries": {"tf": 1}}, "df": 1}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.Query": {"tf": 1}}, "df": 1}}}}}, "s": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1, "d": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1.4142135623730951}, "snuba_sdk.Join": {"tf": 1.4142135623730951}, "snuba_sdk.Relationship": {"tf": 1.4142135623730951}}, "df": 3}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"snuba_sdk.Join": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1}}, "df": 3}}}}}, "g": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {"snuba_sdk.Rollup": {"tf": 1}}, "df": 1, "b": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}, "snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 2}}, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.Rollup": {"tf": 1}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 2}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"snuba_sdk.Timeseries": {"tf": 1}}, "df": 1}}}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk": {"tf": 2}}, "df": 1}}}}}}}}}}, "t": {"docs": {"snuba_sdk": {"tf": 1.7320508075688772}}, "df": 1}, "e": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1}}, "df": 1, "s": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}}}, "w": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 1.7320508075688772}}, "df": 1}}, "n": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1.4142135623730951}, "snuba_sdk.Relationship": {"tf": 1}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 3}}}}, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk": {"tf": 1.7320508075688772}, "snuba_sdk.AliasedExpression": {"tf": 1}, "snuba_sdk.Column": {"tf": 1.4142135623730951}, "snuba_sdk.Join": {"tf": 1.4142135623730951}, "snuba_sdk.Query": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1}, "snuba_sdk.Timeseries": {"tf": 1}}, "df": 8}}, "t": {"docs": {}, "df": 0, "h": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}, "snuba_sdk.Column": {"tf": 1}, "snuba_sdk.Metric": {"tf": 1}, "snuba_sdk.Rollup": {"tf": 1}}, "df": 4}}}, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {"snuba_sdk.Column": {"tf": 1}}, "df": 1}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}}}}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk": {"tf": 2}}, "df": 1, "e": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.AliasedExpression": {"tf": 1}}, "df": 1}}}}}, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 1.4142135623730951}}, "df": 1, "d": {"docs": {"snuba_sdk": {"tf": 1}}, "df": 1}}}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}}, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"snuba_sdk.Join": {"tf": 1}}, "df": 1}}}}, "h": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.Relationship": {"tf": 2}}, "df": 1}}}, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {"snuba_sdk.Query": {"tf": 1}, "snuba_sdk.Relationship": {"tf": 1}}, "df": 2, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"snuba_sdk": {"tf": 1}, "snuba_sdk.Query": {"tf": 1}}, "df": 2, "d": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.MetricsQuery": {"tf": 1}}, "df": 1}}}}}}}, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"snuba_sdk.MetricsScope": {"tf": 1.4142135623730951}, "snuba_sdk.Timeseries": {"tf": 1.4142135623730951}}, "df": 2}}}}}}, "y": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {"snuba_sdk.Column": {"tf": 1}}, "df": 1}}}, "k": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "y": {"docs": {"snuba_sdk.Column": {"tf": 1.4142135623730951}}, "df": 1}}}, "j": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"snuba_sdk.Join": {"tf": 1}}, "df": 1}}}}}}}, "pipeline": ["trimmer"], "_isPrebuiltIndex": true};
+
+ // mirrored in build-search-index.js (part 1)
+ // Also split on html tags. this is a cheap heuristic, but good enough.
+ elasticlunr.tokenizer.setSeperator(/[\s\-.;&_'"=,()]+|<[^>]*>/);
+
+ let searchIndex;
+ if (docs._isPrebuiltIndex) {
+ console.info("using precompiled search index");
+ searchIndex = elasticlunr.Index.load(docs);
+ } else {
+ console.time("building search index");
+ // mirrored in build-search-index.js (part 2)
+ searchIndex = elasticlunr(function () {
+ this.pipeline.remove(elasticlunr.stemmer);
+ this.pipeline.remove(elasticlunr.stopWordFilter);
+ this.addField("qualname");
+ this.addField("fullname");
+ this.addField("annotation");
+ this.addField("default_value");
+ this.addField("signature");
+ this.addField("bases");
+ this.addField("doc");
+ this.setRef("fullname");
+ });
+ for (let doc of docs) {
+ searchIndex.addDoc(doc);
+ }
+ console.timeEnd("building search index");
+ }
+
+ return (term) => searchIndex.search(term, {
+ fields: {
+ qualname: {boost: 4},
+ fullname: {boost: 2},
+ annotation: {boost: 2},
+ default_value: {boost: 2},
+ signature: {boost: 2},
+ bases: {boost: 2},
+ doc: {boost: 1},
+ },
+ expand: true
+ });
+})();
\ No newline at end of file
diff --git a/snuba_sdk.html b/snuba_sdk.html
new file mode 100644
index 00000000..6ca44320
--- /dev/null
+++ b/snuba_sdk.html
@@ -0,0 +1,6306 @@
+
+
+
+
+
+
+ snuba_sdk API documentation
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+snuba_sdk
+
+
+
+
See here for the full
+documentation .
+
+
Status
+
+
+
+
+
+
+
+
Examples
+
+
Snuba SDK is a tool that allows requests to Snuba to be built
+programatically. A Request consists of a Query, the dataset the Query is
+targeting, the AppID of the Request, and any flags for the Request. A
+Query object is a code representation of a SnQL query, and has a number
+of attributes corresponding to different parts of the query.
+
+
Requests and Queries can be created directly:
+
+
+
request = Request (
+ dataset = "discover" ,
+ app_id = "myappid" ,
+ tenant_ids = { "referrer" : "my_referrer" , "organization_id" : 1234 }
+ query = Query (
+ match = Entity ( "events" ),
+ select = [
+ Column ( "title" ),
+ Function ( "uniq" , [ Column ( "event_id" )], "uniq_events" ),
+ ],
+ groupby = [ Column ( "title" )],
+ where = [
+ Condition ( Column ( "timestamp" ), Op.GT , datetime . datetime ( 2021 , 1 , 1 )),
+ Condition ( Column ( "project_id" ), Op.IN , Function ( "tuple" , [ 1 , 2 , 3 ])),
+ ],
+ limit = Limit ( 10 ),
+ offset = Offset ( 0 ),
+ granularity = Granularity ( 3600 ),
+ ),
+ flags = Flags ( debug = True )
+)
+
+
+
+
Queries can also be built incrementally:
+
+
+
query = (
+ Query ( "discover" , Entity ( "events" ))
+ . set_select (
+ [ Column ( "title" ), Function ( "uniq" , [ Column ( "event_id" )], "uniq_events" )]
+ )
+ . set_groupby ([ Column ( "title" )])
+ . set_where (
+ [
+ Condition ( Column ( "timestamp" ), Op.GT , datetime . datetime . ( 2021 , 1 , 1 )),
+ Condition ( Column ( "project_id" ), Op.IN , Function ( "tuple" , [ 1 , 2 , 3 ])),
+ ]
+ )
+ . set_limit ( 10 )
+ . set_offset ( 0 )
+ . set_granularity ( 3600 )
+)
+
+
+
+
Once the request is built, it can be translated into a Snuba request
+that can be sent to Snuba.
+
+
+
# Outputs a formatted Snuba request
+request . serialize ()
+
+
+
+
It can also be printed in a more human readable format.
+
+
+
# Outputs a formatted Snuba request
+print ( request . print ())
+
+
+
+
This outputs:
+
+
+
{
+ "dataset" : "discover" ,
+ "app_id" : "myappid" ,
+ "query" : "MATCH (events) SELECT title, uniq(event_id) AS uniq_events BY title WHERE timestamp > toDateTime('2021-01-01T00:00:00.000000') AND project_id IN tuple(1, 2, 3) LIMIT 10 OFFSET 0 GRANULARITY 3600" ,
+ "debug" : true
+}
+
+
+
+
If an expression in the query is invalid (e.g. Column(1)
) then an
+InvalidExpressionError
exception will be thrown. If there is a problem
+with a query, it will throw an InvalidQueryError
exception when
+.validate()
or .translate()
is called. If there is a problem with
+the Request or the Flags, an InvalidRequestError
or InvalidFlagError
+will be thrown respectively.
+
+
Contributing to the SDK
+
+
Please refer to
+CONTRIBUTING.rst .
+
+
License
+
+
Licensed under FSL-1.0-Apache-2.0, see
+LICENSE .
+
+
+
+
+ View Source
+
+ 1 """
+ 2 .. include:: ../README.md
+ 3 """
+ 4
+ 5 from snuba_sdk.aliased_expression import AliasedExpression
+ 6 from snuba_sdk.column import Column
+ 7 from snuba_sdk.conditions import And , BooleanCondition , BooleanOp , Condition , Op , Or
+ 8 from snuba_sdk.entity import Entity
+ 9 from snuba_sdk.expressions import Granularity , Limit , Offset , Totals
+10 from snuba_sdk.formula import ArithmeticOperator , Formula
+11 from snuba_sdk.function import CurriedFunction , Function , Identifier , Lambda
+12 from snuba_sdk.metrics_query import MetricsQuery
+13 from snuba_sdk.orderby import Direction , LimitBy , OrderBy
+14 from snuba_sdk.query import Query
+15 from snuba_sdk.relationships import Join , Relationship
+16 from snuba_sdk.request import Flags , Request
+17 from snuba_sdk.timeseries import Metric , MetricsScope , Rollup , Timeseries
+18
+19 __all__ = [
+20 "AliasedExpression" ,
+21 "And" ,
+22 "ArithmeticOperator" ,
+23 "BooleanCondition" ,
+24 "BooleanOp" ,
+25 "Column" ,
+26 "Condition" ,
+27 "CurriedFunction" ,
+28 "Direction" ,
+29 "Entity" ,
+30 "Flags" ,
+31 "Formula" ,
+32 "Function" ,
+33 "Granularity" ,
+34 "Identifier" ,
+35 "Join" ,
+36 "Lambda" ,
+37 "Limit" ,
+38 "LimitBy" ,
+39 "Metric" ,
+40 "MetricsQuery" ,
+41 "MetricsScope" ,
+42 "MQLContext" ,
+43 "Offset" ,
+44 "Op" ,
+45 "Or" ,
+46 "OrderBy" ,
+47 "Query" ,
+48 "Relationship" ,
+49 "Request" ,
+50 "Rollup" ,
+51 "Timeseries" ,
+52 "Totals" ,
+53 ]
+
+
+
+
+
+
+
+
+ class
+ AliasedExpression (snuba_sdk.expressions.Expression ):
+
+ View Source
+
+
+
+ 10 class AliasedExpression ( Expression ):
+11 """
+12 Used to alias the name of an expression in the results of a query. It is not used
+13 anywhere in Snuba except to change the names in the results set. Right now this is
+14 limited to Columns only because Functions have a separate alias. Eventually the
+15 two will be combined.
+16
+17 :param Expression: The expression to alias.
+18 :type Expression: Column
+19 :raises InvalidExpressionError: If the expression or alias is invalid.
+20 """
+21
+22 # TODO: We should eventually allow Functions here as well, once we think through
+23 # how this should work with functions that already have aliases.
+24 exp : Column
+25 alias : Optional [ str ] = None
+26
+27 def validate ( self ) -> None :
+28 if not isinstance ( self . exp , Column ):
+29 raise InvalidExpressionError (
+30 "aliased expressions can only contain a Column"
+31 )
+32
+33 if self . alias is not None :
+34 if not isinstance ( self . alias , str ) or self . alias == "" :
+35 raise InvalidExpressionError (
+36 f "alias ' { self . alias } ' of expression must be None or a non-empty string"
+37 )
+38 if not ALIAS_RE . match ( self . alias ):
+39 raise InvalidExpressionError (
+40 f "alias ' { self . alias } ' of expression contains invalid characters"
+41 )
+
+
+
+ Used to alias the name of an expression in the results of a query. It is not used
+anywhere in Snuba except to change the names in the results set. Right now this is
+limited to Columns only because Functions have a separate alias. Eventually the
+two will be combined.
+
+
Parameters
+
+
+Expression : The expression to alias.
+
+
+
Raises
+
+
+InvalidExpressionError : If the expression or alias is invalid.
+
+
+
+
+
+
+
+
AliasedExpression (exp : Column , alias : Union [ str , NoneType ] = None )
+
+
+
+
+
+
+
+
+
+
+
+ alias : Union[str, NoneType] =
+None
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
27 def validate ( self ) -> None :
+28 if not isinstance ( self . exp , Column ):
+29 raise InvalidExpressionError (
+30 "aliased expressions can only contain a Column"
+31 )
+32
+33 if self . alias is not None :
+34 if not isinstance ( self . alias , str ) or self . alias == "" :
+35 raise InvalidExpressionError (
+36 f "alias ' { self . alias } ' of expression must be None or a non-empty string"
+37 )
+38 if not ALIAS_RE . match ( self . alias ):
+39 raise InvalidExpressionError (
+40 f "alias ' { self . alias } ' of expression contains invalid characters"
+41 )
+
+
+
+
+
+
+
+
+
+
+
+ 136 class And ( BooleanCondition ):
+137 op : BooleanOp = field ( init = False , default = BooleanOp . AND )
+138 conditions : ConditionGroup = field ( default_factory = list )
+
+
+
+
+
+
+
+
+
+
Inherited Members
+
+
+
+
+
+
+
+
+
+ class
+ ArithmeticOperator (enum.Enum ):
+
+ View Source
+
+
+
+ 23 class ArithmeticOperator ( Enum ):
+24 PLUS = "plus"
+25 MINUS = "minus"
+26 MULTIPLY = "multiply"
+27 DIVIDE = "divide"
+
+
+
+
+
+
+
+
+
+
+
+
Inherited Members
+
+
enum.Enum
+ name
+ value
+
+
+
+
+
+
+
+
+
+ class
+ BooleanCondition (snuba_sdk.expressions.Expression ):
+
+ View Source
+
+
+
+ 109 class BooleanCondition ( Expression ):
+110 op : BooleanOp
+111 conditions : ConditionGroup
+112
+113 def validate ( self ) -> None :
+114 if not isinstance ( self . op , BooleanOp ):
+115 raise InvalidConditionError (
+116 "invalid boolean: operator of a boolean must be a BooleanOp"
+117 )
+118
+119 if not isinstance ( self . conditions , ( list , tuple )):
+120 raise InvalidConditionError (
+121 "invalid boolean: conditions must be a list of other conditions"
+122 )
+123 elif len ( self . conditions ) < 2 :
+124 raise InvalidConditionError (
+125 "invalid boolean: must supply at least two conditions"
+126 )
+127
+128 for con in self . conditions :
+129 if not isinstance ( con , ( Condition , BooleanCondition )):
+130 raise InvalidConditionError (
+131 f "invalid boolean: { con } is not a valid condition"
+132 )
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
113 def validate ( self ) -> None :
+114 if not isinstance ( self . op , BooleanOp ):
+115 raise InvalidConditionError (
+116 "invalid boolean: operator of a boolean must be a BooleanOp"
+117 )
+118
+119 if not isinstance ( self . conditions , ( list , tuple )):
+120 raise InvalidConditionError (
+121 "invalid boolean: conditions must be a list of other conditions"
+122 )
+123 elif len ( self . conditions ) < 2 :
+124 raise InvalidConditionError (
+125 "invalid boolean: must supply at least two conditions"
+126 )
+127
+128 for con in self . conditions :
+129 if not isinstance ( con , ( Condition , BooleanCondition )):
+130 raise InvalidConditionError (
+131 f "invalid boolean: { con } is not a valid condition"
+132 )
+
+
+
+
+
+
+
+
+
+
+
+ class
+ BooleanOp (enum.Enum ):
+
+ View Source
+
+
+
+ 103 class BooleanOp ( Enum ):
+104 AND = "AND"
+105 OR = "OR"
+
+
+
+
+
+
+
+
+
+
Inherited Members
+
+
enum.Enum
+ name
+ value
+
+
+
+
+
+
+
+
+
+ class
+ Column (snuba_sdk.expressions.Expression ):
+
+ View Source
+
+
+
+ 18 class Column ( Expression ):
+19 """
+20 A representation of a single column in the database. Columns are
+21 expected to be alpha-numeric, with '.', '_`, and `:` allowed as well.
+22 If the column is subscriptable then you can specify the column in the
+23 form `subscriptable[key]`. The `subscriptable` attribute will contain the outer
+24 column and `key` will contain the inner key.
+25
+26 :param name: The column name.
+27 :type name: str
+28 :param entity: The entity for that column
+29 :type name: Optional[Entity]
+30
+31 :raises InvalidColumnError: If the column name is not a string or has an
+32 invalid format.
+33
+34 """
+35
+36 name : str
+37 entity : Optional [ Entity ] = None
+38 subscriptable : Optional [ str ] = field ( init = False , default = None )
+39 key : Optional [ str ] = field ( init = False , default = None )
+40
+41 def validate ( self ) -> None :
+42 if not isinstance ( self . name , str ):
+43 raise InvalidColumnError ( f "column ' { self . name } ' must be a string" )
+44 if not column_name_re . match ( self . name ):
+45 raise InvalidColumnError (
+46 f "column ' { self . name } ' is empty or contains invalid characters"
+47 )
+48
+49 if self . entity is not None :
+50 if not isinstance ( self . entity , Entity ):
+51 raise InvalidColumnError ( f "column ' { self . name } ' expects an Entity" )
+52 if not self . entity . alias :
+53 raise InvalidColumnError (
+54 f "column ' { self . name } ' expects an Entity with an alias"
+55 )
+56
+57 self . validate_data_model ( self . entity )
+58
+59 # If this is a subscriptable set these values to help with debugging etc.
+60 # Because this is frozen we can't set the value directly.
+61 if "[" in self . name :
+62 subscriptable , key = self . name . split ( "[" , 1 )
+63 key = key . strip ( "]" )
+64 super () . __setattr__ ( "subscriptable" , subscriptable )
+65 super () . __setattr__ ( "key" , key )
+66
+67 def validate_data_model ( self , entity : Entity ) -> None :
+68 if entity . data_model is None :
+69 return
+70
+71 to_check = self . subscriptable if self . subscriptable else self . name
+72 if not entity . data_model . contains ( to_check ):
+73 raise InvalidColumnError (
+74 f "entity ' { entity . name } ' does not support the column ' { self . name } '"
+75 )
+
+
+
+ A representation of a single column in the database. Columns are
+expected to be alpha-numeric, with '.', '_, and
:allowed as well.
+If the column is subscriptable then you can specify the column in the
+form
subscriptable[key]. The
subscriptableattribute will contain the outer
+column and
key` will contain the inner key.
+
+
Parameters
+
+
+name : The column name.
+entity : The entity for that column
+
+
+
Raises
+
+
+InvalidColumnError : If the column name is not a string or has an
+invalid format.
+
+
+
+
+
+
+
+
Column (name : str , entity : Union [ Entity , NoneType ] = None )
+
+
+
+
+
+
+
+
+
+
+ name : str
+
+
+
+
+
+
+
+
+
+
+
entity : Union[Entity , NoneType] =
+
None
+
+
+
+
+
+
+
+
+
+
+ subscriptable : Union[str, NoneType] =
+None
+
+
+
+
+
+
+
+
+
+
+ key : Union[str, NoneType] =
+None
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
41 def validate ( self ) -> None :
+42 if not isinstance ( self . name , str ):
+43 raise InvalidColumnError ( f "column ' { self . name } ' must be a string" )
+44 if not column_name_re . match ( self . name ):
+45 raise InvalidColumnError (
+46 f "column ' { self . name } ' is empty or contains invalid characters"
+47 )
+48
+49 if self . entity is not None :
+50 if not isinstance ( self . entity , Entity ):
+51 raise InvalidColumnError ( f "column ' { self . name } ' expects an Entity" )
+52 if not self . entity . alias :
+53 raise InvalidColumnError (
+54 f "column ' { self . name } ' expects an Entity with an alias"
+55 )
+56
+57 self . validate_data_model ( self . entity )
+58
+59 # If this is a subscriptable set these values to help with debugging etc.
+60 # Because this is frozen we can't set the value directly.
+61 if "[" in self . name :
+62 subscriptable , key = self . name . split ( "[" , 1 )
+63 key = key . strip ( "]" )
+64 super () . __setattr__ ( "subscriptable" , subscriptable )
+65 super () . __setattr__ ( "key" , key )
+
+
+
+
+
+
+
+
+
+
+
def
+
validate_data_model (self , entity : Entity ) -> None :
+
+
View Source
+
+
+
+
67 def validate_data_model ( self , entity : Entity ) -> None :
+68 if entity . data_model is None :
+69 return
+70
+71 to_check = self . subscriptable if self . subscriptable else self . name
+72 if not entity . data_model . contains ( to_check ):
+73 raise InvalidColumnError (
+74 f "entity ' { entity . name } ' does not support the column ' { self . name } '"
+75 )
+
+
+
+
+
+
+
+
+
+
+
+ class
+ Condition (snuba_sdk.expressions.Expression ):
+
+ View Source
+
+
+
+ 74 class Condition ( Expression ):
+ 75 lhs : Union [ Column , CurriedFunction , Function ]
+ 76 op : Op
+ 77 rhs : Optional [ Union [ Column , CurriedFunction , Function , ScalarType ]] = None
+ 78
+ 79 def validate ( self ) -> None :
+ 80 if not isinstance ( self . lhs , ( Column , CurriedFunction , Function )):
+ 81 raise InvalidConditionError (
+ 82 f "invalid condition: LHS of a condition must be a Column, CurriedFunction or Function, not { type ( self . lhs ) } "
+ 83 )
+ 84 if not isinstance ( self . op , Op ):
+ 85 raise InvalidConditionError (
+ 86 "invalid condition: operator of a condition must be an Op"
+ 87 )
+ 88
+ 89 if is_unary ( self . op ):
+ 90 if self . rhs is not None :
+ 91 raise InvalidConditionError (
+ 92 "invalid condition: unary operators don't have rhs conditions"
+ 93 )
+ 94
+ 95 if not isinstance (
+ 96 self . rhs , ( Column , CurriedFunction , Function )
+ 97 ) and not is_scalar ( self . rhs ):
+ 98 raise InvalidConditionError (
+ 99 f "invalid condition: RHS of a condition must be a Column, CurriedFunction, Function or Scalar not { type ( self . rhs ) } "
+100 )
+
+
+
+
+
+
+
+
+
Condition ( lhs : Union [ Column , CurriedFunction , Function ] , op : Op , rhs : Union [ Column , CurriedFunction , Function , NoneType , bool , str , bytes , float , int , datetime . date , datetime . datetime , Sequence [ Union [ snuba_sdk . expressions . Expression , NoneType , bool , str , bytes , float , int , datetime . date , datetime . datetime ]]] = None )
+
+
+
+
+
+
+
+
+
+
+
+
+
rhs : Union[Column , CurriedFunction , Function , NoneType, bool, str, bytes, float, int, datetime.date, datetime.datetime, Sequence[Union[snuba_sdk.expressions.Expression, NoneType, bool, str, bytes, float, int, datetime.date, datetime.datetime]]] =
+
None
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
79 def validate ( self ) -> None :
+ 80 if not isinstance ( self . lhs , ( Column , CurriedFunction , Function )):
+ 81 raise InvalidConditionError (
+ 82 f "invalid condition: LHS of a condition must be a Column, CurriedFunction or Function, not { type ( self . lhs ) } "
+ 83 )
+ 84 if not isinstance ( self . op , Op ):
+ 85 raise InvalidConditionError (
+ 86 "invalid condition: operator of a condition must be an Op"
+ 87 )
+ 88
+ 89 if is_unary ( self . op ):
+ 90 if self . rhs is not None :
+ 91 raise InvalidConditionError (
+ 92 "invalid condition: unary operators don't have rhs conditions"
+ 93 )
+ 94
+ 95 if not isinstance (
+ 96 self . rhs , ( Column , CurriedFunction , Function )
+ 97 ) and not is_scalar ( self . rhs ):
+ 98 raise InvalidConditionError (
+ 99 f "invalid condition: RHS of a condition must be a Column, CurriedFunction, Function or Scalar not { type ( self . rhs ) } "
+100 )
+
+
+
+
+
+
+
+
+
+
+
+ class
+ CurriedFunction (snuba_sdk.expressions.Expression ):
+
+ View Source
+
+
+
+ 33 class CurriedFunction ( Expression ):
+ 34 function : str
+ 35 initializers : Optional [ Sequence [ Union [ ScalarLiteralType , Column ]]] = None
+ 36 parameters : Optional [
+ 37 Sequence [
+ 38 Union [
+ 39 ScalarType ,
+ 40 Column ,
+ 41 CurriedFunction ,
+ 42 Function ,
+ 43 Identifier ,
+ 44 Lambda ,
+ 45 ]
+ 46 ]
+ 47 ] = None
+ 48 alias : Optional [ str ] = None
+ 49
+ 50 def validate ( self ) -> None :
+ 51 if not isinstance ( self . function , str ):
+ 52 raise InvalidFunctionError ( f "function ' { self . function } ' must be a string" )
+ 53 if self . function == "" :
+ 54 # TODO: Have a whitelist of valid functions to check, maybe even with more
+ 55 # specific parameter type checking
+ 56 raise InvalidFunctionError ( "function cannot be empty" )
+ 57 if not function_name_re . match ( self . function ):
+ 58 raise InvalidFunctionError (
+ 59 f "function ' { self . function } ' contains invalid characters"
+ 60 )
+ 61
+ 62 if self . initializers is not None :
+ 63 if not isinstance ( self . initializers , Sequence ):
+ 64 raise InvalidFunctionError (
+ 65 f "initializers of function { self . function } must be a Sequence"
+ 66 )
+ 67 elif not all (
+ 68 isinstance ( param , Column ) or is_literal ( param )
+ 69 for param in self . initializers
+ 70 ):
+ 71 raise InvalidFunctionError (
+ 72 f "initializers to function { self . function } must be a scalar or column"
+ 73 )
+ 74
+ 75 if self . alias is not None :
+ 76 if not isinstance ( self . alias , str ) or self . alias == "" :
+ 77 raise InvalidFunctionError (
+ 78 f "alias ' { self . alias } ' of function { self . function } must be None or a non-empty string"
+ 79 )
+ 80 if not ALIAS_RE . match ( self . alias ):
+ 81 raise InvalidFunctionError (
+ 82 f "alias ' { self . alias } ' of function { self . function } contains invalid characters"
+ 83 )
+ 84
+ 85 if self . parameters is not None :
+ 86 if not isinstance ( self . parameters , Sequence ):
+ 87 raise InvalidFunctionError (
+ 88 f "parameters of function { self . function } must be a Sequence"
+ 89 )
+ 90 for param in self . parameters :
+ 91 if not isinstance (
+ 92 param ,
+ 93 ( Column , CurriedFunction , Function , Identifier , Lambda ),
+ 94 ) and not is_scalar ( param ):
+ 95 assert not isinstance ( param , bytes ) # mypy
+ 96 raise InvalidFunctionError (
+ 97 f "parameter ' { param } ' of function { self . function } is an invalid type"
+ 98 )
+ 99
+100 def __eq__ ( self , other : object ) -> bool :
+101 # Don't use the alias to compare equality
+102 if not isinstance ( other , CurriedFunction ):
+103 return False
+104
+105 return (
+106 self . function == other . function
+107 and self . initializers == other . initializers
+108 and self . parameters == other . parameters
+109 )
+
+
+
+
+
+
+
+
+
CurriedFunction ( function : str , initializers : Union [ Sequence [ Union [ NoneType , bool , str , bytes , float , int , datetime . date , datetime . datetime , Column ]], NoneType ] = None , parameters : Union [ Sequence [ Union [ NoneType , bool , str , bytes , float , int , datetime . date , datetime . datetime , Sequence [ Union [ snuba_sdk . expressions . Expression , NoneType , bool , str , bytes , float , int , datetime . date , datetime . datetime ]], Column , CurriedFunction , Function , Identifier , Lambda ]], NoneType ] = None , alias : Union [ str , NoneType ] = None )
+
+
+
+
+
+
+
+
+
+
+ function : str
+
+
+
+
+
+
+
+
+
+
+
initializers : Union[Sequence[Union[NoneType, bool, str, bytes, float, int, datetime.date, datetime.datetime, Column ]], NoneType] =
+
None
+
+
+
+
+
+
+
+
+
+
+
parameters : Union[Sequence[Union[NoneType, bool, str, bytes, float, int, datetime.date, datetime.datetime, Sequence[Union[snuba_sdk.expressions.Expression, NoneType, bool, str, bytes, float, int, datetime.date, datetime.datetime]], Column , CurriedFunction , Function , Identifier , Lambda ]], NoneType] =
+
None
+
+
+
+
+
+
+
+
+
+
+ alias : Union[str, NoneType] =
+None
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
50 def validate ( self ) -> None :
+51 if not isinstance ( self . function , str ):
+52 raise InvalidFunctionError ( f "function ' { self . function } ' must be a string" )
+53 if self . function == "" :
+54 # TODO: Have a whitelist of valid functions to check, maybe even with more
+55 # specific parameter type checking
+56 raise InvalidFunctionError ( "function cannot be empty" )
+57 if not function_name_re . match ( self . function ):
+58 raise InvalidFunctionError (
+59 f "function ' { self . function } ' contains invalid characters"
+60 )
+61
+62 if self . initializers is not None :
+63 if not isinstance ( self . initializers , Sequence ):
+64 raise InvalidFunctionError (
+65 f "initializers of function { self . function } must be a Sequence"
+66 )
+67 elif not all (
+68 isinstance ( param , Column ) or is_literal ( param )
+69 for param in self . initializers
+70 ):
+71 raise InvalidFunctionError (
+72 f "initializers to function { self . function } must be a scalar or column"
+73 )
+74
+75 if self . alias is not None :
+76 if not isinstance ( self . alias , str ) or self . alias == "" :
+77 raise InvalidFunctionError (
+78 f "alias ' { self . alias } ' of function { self . function } must be None or a non-empty string"
+79 )
+80 if not ALIAS_RE . match ( self . alias ):
+81 raise InvalidFunctionError (
+82 f "alias ' { self . alias } ' of function { self . function } contains invalid characters"
+83 )
+84
+85 if self . parameters is not None :
+86 if not isinstance ( self . parameters , Sequence ):
+87 raise InvalidFunctionError (
+88 f "parameters of function { self . function } must be a Sequence"
+89 )
+90 for param in self . parameters :
+91 if not isinstance (
+92 param ,
+93 ( Column , CurriedFunction , Function , Identifier , Lambda ),
+94 ) and not is_scalar ( param ):
+95 assert not isinstance ( param , bytes ) # mypy
+96 raise InvalidFunctionError (
+97 f "parameter ' { param } ' of function { self . function } is an invalid type"
+98 )
+
+
+
+
+
+
+
+
+
+
+
+ class
+ Direction (enum.Enum ):
+
+ View Source
+
+
+
+ 11 class Direction ( Enum ):
+12 ASC = "ASC"
+13 DESC = "DESC"
+
+
+
+
+
+
+
+
+
+
Inherited Members
+
+
enum.Enum
+ name
+ value
+
+
+
+
+
+
+
+
+
+ class
+ Entity (snuba_sdk.expressions.Expression ):
+
+ View Source
+
+
+
+ 17 class Entity ( Expression ):
+18 name : str
+19 alias : Optional [ str ] = None
+20 sample : Optional [ float ] = None
+21 data_model : Optional [ EntityModel ] = field ( hash = False , default = None )
+22
+23 def validate ( self ) -> None :
+24 # TODO: There should be a whitelist of entity names at some point
+25 if not isinstance ( self . name , str ) or not entity_name_re . match ( self . name ):
+26 raise InvalidEntityError ( f "' { self . name } ' is not a valid entity name" )
+27
+28 if self . sample is not None :
+29 if not isinstance ( self . sample , float ):
+30 raise InvalidEntityError ( "sample must be a float" )
+31 elif self . sample <= 0.0 :
+32 raise InvalidEntityError ( "samples must be greater than 0.0" )
+33
+34 if self . alias is not None :
+35 if not isinstance ( self . alias , str ) or not self . alias :
+36 raise InvalidEntityError ( f "' { self . alias } ' is not a valid alias" )
+37
+38 if self . data_model is not None :
+39 if not isinstance ( self . data_model , EntityModel ):
+40 raise InvalidEntityError (
+41 "data_model must be an instance of EntityModel"
+42 )
+43
+44 def __repr__ ( self ) -> str :
+45 alias = f ", alias=' { self . alias } '" if self . alias is not None else ""
+46 sample = f ", sample= { self . sample } " if self . sample is not None else ""
+47 return f "Entity(' { self . name } ' { alias }{ sample } )"
+
+
+
+
+
+
+
+
+ Entity ( name : str , alias : Union [ str , NoneType ] = None , sample : Union [ float , NoneType ] = None , data_model : Union [ snuba_sdk . schema . EntityModel , NoneType ] = None )
+
+
+
+
+
+
+
+
+
+
+ name : str
+
+
+
+
+
+
+
+
+
+
+ alias : Union[str, NoneType] =
+None
+
+
+
+
+
+
+
+
+
+
+ sample : Union[float, NoneType] =
+None
+
+
+
+
+
+
+
+
+
+
+ data_model : Union[snuba_sdk.schema.EntityModel, NoneType] =
+None
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
23 def validate ( self ) -> None :
+24 # TODO: There should be a whitelist of entity names at some point
+25 if not isinstance ( self . name , str ) or not entity_name_re . match ( self . name ):
+26 raise InvalidEntityError ( f "' { self . name } ' is not a valid entity name" )
+27
+28 if self . sample is not None :
+29 if not isinstance ( self . sample , float ):
+30 raise InvalidEntityError ( "sample must be a float" )
+31 elif self . sample <= 0.0 :
+32 raise InvalidEntityError ( "samples must be greater than 0.0" )
+33
+34 if self . alias is not None :
+35 if not isinstance ( self . alias , str ) or not self . alias :
+36 raise InvalidEntityError ( f "' { self . alias } ' is not a valid alias" )
+37
+38 if self . data_model is not None :
+39 if not isinstance ( self . data_model , EntityModel ):
+40 raise InvalidEntityError (
+41 "data_model must be an instance of EntityModel"
+42 )
+
+
+
+
+
+
+
+
+
+
+
+ class
+ Flags :
+
+ View Source
+
+
+
+ 22 class Flags :
+23 totals : bool | None = None
+24 consistent : bool | None = None
+25 turbo : bool | None = None
+26 debug : bool | None = None
+27 dry_run : bool | None = None
+28 legacy : bool | None = None
+29
+30 def validate ( self ) -> None :
+31 flags_fields = fields ( self )
+32 for ff in flags_fields :
+33 flag = getattr ( self , ff . name )
+34 if flag is not None and not isinstance ( flag , bool ):
+35 raise InvalidFlagError ( f " { ff . name } must be a boolean" )
+36
+37 def to_dict ( self ) -> dict [ str , bool ]:
+38 self . validate ()
+39 values = asdict ( self )
+40 return { f : v for f , v in values . items () if v is not None }
+
+
+
+
+
+
+
+
+ Flags ( totals : 'bool | None' = None , consistent : 'bool | None' = None , turbo : 'bool | None' = None , debug : 'bool | None' = None , dry_run : 'bool | None' = None , legacy : 'bool | None' = None )
+
+
+
+
+
+
+
+
+
+
+ totals : 'bool | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ consistent : 'bool | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ turbo : 'bool | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ debug : 'bool | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ dry_run : 'bool | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ legacy : 'bool | None' =
+None
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
30 def validate ( self ) -> None :
+31 flags_fields = fields ( self )
+32 for ff in flags_fields :
+33 flag = getattr ( self , ff . name )
+34 if flag is not None and not isinstance ( flag , bool ):
+35 raise InvalidFlagError ( f " { ff . name } must be a boolean" )
+
+
+
+
+
+
+
+
+
+
+ def
+ to_dict (self ) -> 'dict[str, bool]' :
+
+ View Source
+
+
+
+
37 def to_dict ( self ) -> dict [ str , bool ]:
+38 self . validate ()
+39 values = asdict ( self )
+40 return { f : v for f , v in values . items () if v is not None }
+
+
+
+
+
+
+
+
+
+
+
+
+ 113 class Function ( CurriedFunction ):
+114 initializers : Optional [ Sequence [ Union [ ScalarLiteralType , Column ]]] = field (
+115 init = False , default = None
+116 )
+
+
+
+
+
+
+
+
+
Function ( function : str , parameters : Union [ Sequence [ Union [ NoneType , bool , str , bytes , float , int , datetime . date , datetime . datetime , Sequence [ Union [ snuba_sdk . expressions . Expression , NoneType , bool , str , bytes , float , int , datetime . date , datetime . datetime ]], Column , CurriedFunction , Function , Identifier , Lambda ]], NoneType ] = None , alias : Union [ str , NoneType ] = None )
+
+
+
+
+
+
+
+
+
+
+
initializers : Union[Sequence[Union[NoneType, bool, str, bytes, float, int, datetime.date, datetime.datetime, Column ]], NoneType] =
+
None
+
+
+
+
+
+
+
+
+
+
Inherited Members
+
+
+
+
+
+
+
+
+
+ class
+ Granularity (snuba_sdk.expressions.Expression ):
+
+ View Source
+
+
+
+ 108 class Granularity ( Expression ):
+109 granularity : int
+110
+111 def validate ( self ) -> None :
+112 _validate_int_literal ( "granularity" , self . granularity , 1 , None )
+
+
+
+
+
+
+
+
+ Granularity (granularity : int )
+
+
+
+
+
+
+
+
+
+
+ granularity : int
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
111 def validate ( self ) -> None :
+112 _validate_int_literal ( "granularity" , self . granularity , 1 , None )
+
+
+
+
+
+
+
+
+
+
+
+ class
+ Identifier (snuba_sdk.expressions.Expression ):
+
+ View Source
+
+
+
+ 127 class Identifier ( Expression ):
+128 name : str
+129
+130 def validate ( self ) -> None :
+131 if not isinstance ( self . name , str ) or not identifier_re . match ( self . name ):
+132 raise InvalidLambdaError ( f "` { self . name } ` is not a valid identifier" )
+
+
+
+
+
+
+
+
+ Identifier (name : str )
+
+
+
+
+
+
+
+
+
+
+ name : str
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
130 def validate ( self ) -> None :
+131 if not isinstance ( self . name , str ) or not identifier_re . match ( self . name ):
+132 raise InvalidLambdaError ( f "` { self . name } ` is not a valid identifier" )
+
+
+
+
+
+
+
+
+
+
+
+ class
+ Join (snuba_sdk.expressions.Expression ):
+
+ View Source
+
+
+
+ 52 class Join ( Expression ):
+53 """
+54 A collection of relationships that is used in the MATCH section of
+55 the SnQL query. Must contain at least one Relationship, and will make
+56 sure that Entity aliases are not used by different Entities.
+57
+58 :param relationships: The relationships in the join.
+59 :type name: Sequence[Relationship]
+60
+61 :raises InvalidExpressionError: If two different Entities are using
+62 the same alias, this will be raised.
+63
+64 """
+65
+66 relationships : Sequence [ Relationship ]
+67
+68 def get_alias_mappings ( self ) -> set [ tuple [ str , str ]]:
+69 aliases = set ()
+70 for rel in self . relationships :
+71 if rel . lhs . alias is not None :
+72 aliases . add (( rel . lhs . alias , rel . lhs . name ))
+73 if rel . rhs . alias is not None :
+74 aliases . add (( rel . rhs . alias , rel . rhs . name ))
+75
+76 return aliases
+77
+78 def get_entities ( self ) -> set [ Entity ]:
+79 entities = set ()
+80 for rel in self . relationships :
+81 entities . add ( rel . lhs )
+82 entities . add ( rel . rhs )
+83 return entities
+84
+85 def validate ( self ) -> None :
+86 if not isinstance ( self . relationships , ( list , tuple )) or not self . relationships :
+87 raise InvalidExpressionError ( "Join must have at least one Relationship" )
+88 elif not all ( isinstance ( x , Relationship ) for x in self . relationships ):
+89 raise InvalidExpressionError ( "Join expects a list of Relationship objects" )
+90
+91 seen : MutableMapping [ str , str ] = {}
+92 for alias , entity in self . get_alias_mappings ():
+93 if alias in seen and seen [ alias ] != entity :
+94 entities = sorted ([ entity , seen [ alias ]])
+95 raise InvalidExpressionError (
+96 f "alias ' { alias } ' is duplicated for entities { ', ' . join ( entities ) } "
+97 )
+98 seen [ alias ] = entity
+
+
+
+ A collection of relationships that is used in the MATCH section of
+the SnQL query. Must contain at least one Relationship, and will make
+sure that Entity aliases are not used by different Entities.
+
+
Parameters
+
+
+relationships : The relationships in the join.
+
+
+
Raises
+
+
+InvalidExpressionError : If two different Entities are using
+the same alias, this will be raised.
+
+
+
+
+
+
+
+
+
+
+ def
+ get_alias_mappings (self ) -> 'set[tuple[str, str]]' :
+
+ View Source
+
+
+
+
68 def get_alias_mappings ( self ) -> set [ tuple [ str , str ]]:
+69 aliases = set ()
+70 for rel in self . relationships :
+71 if rel . lhs . alias is not None :
+72 aliases . add (( rel . lhs . alias , rel . lhs . name ))
+73 if rel . rhs . alias is not None :
+74 aliases . add (( rel . rhs . alias , rel . rhs . name ))
+75
+76 return aliases
+
+
+
+
+
+
+
+
+
+
+ def
+ get_entities (self ) -> 'set[Entity]' :
+
+ View Source
+
+
+
+
78 def get_entities ( self ) -> set [ Entity ]:
+79 entities = set ()
+80 for rel in self . relationships :
+81 entities . add ( rel . lhs )
+82 entities . add ( rel . rhs )
+83 return entities
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
85 def validate ( self ) -> None :
+86 if not isinstance ( self . relationships , ( list , tuple )) or not self . relationships :
+87 raise InvalidExpressionError ( "Join must have at least one Relationship" )
+88 elif not all ( isinstance ( x , Relationship ) for x in self . relationships ):
+89 raise InvalidExpressionError ( "Join expects a list of Relationship objects" )
+90
+91 seen : MutableMapping [ str , str ] = {}
+92 for alias , entity in self . get_alias_mappings ():
+93 if alias in seen and seen [ alias ] != entity :
+94 entities = sorted ([ entity , seen [ alias ]])
+95 raise InvalidExpressionError (
+96 f "alias ' { alias } ' is duplicated for entities { ', ' . join ( entities ) } "
+97 )
+98 seen [ alias ] = entity
+
+
+
+
+
+
+
+
+
+
+
+ class
+ Lambda (snuba_sdk.expressions.Expression ):
+
+ View Source
+
+
+
+ 136 class Lambda ( Expression ):
+137 identifiers : Sequence [ str ]
+138 transformation : CurriedFunction
+139
+140 def validate ( self ) -> None :
+141 if not isinstance ( self . identifiers , ( tuple , list )):
+142 raise InvalidLambdaError ( "identifiers must be a sequence" )
+143 for i in self . identifiers :
+144 if not isinstance ( i , str ) or not identifier_re . match ( i ):
+145 raise InvalidLambdaError ( f " { i } is not a valid identifier" )
+146 if not isinstance ( self . transformation , CurriedFunction ):
+147 raise InvalidLambdaError ( "transformation must be a function" )
+
+
+
+
+
+
+
+
+
Lambda ( identifiers : Sequence [ str ] , transformation : CurriedFunction )
+
+
+
+
+
+
+
+
+
+
+ identifiers : Sequence[str]
+
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
140 def validate ( self ) -> None :
+141 if not isinstance ( self . identifiers , ( tuple , list )):
+142 raise InvalidLambdaError ( "identifiers must be a sequence" )
+143 for i in self . identifiers :
+144 if not isinstance ( i , str ) or not identifier_re . match ( i ):
+145 raise InvalidLambdaError ( f " { i } is not a valid identifier" )
+146 if not isinstance ( self . transformation , CurriedFunction ):
+147 raise InvalidLambdaError ( "transformation must be a function" )
+
+
+
+
+
+
+
+
+
+
+
+ class
+ Limit (snuba_sdk.expressions.Expression ):
+
+ View Source
+
+
+
+ 92 class Limit ( Expression ):
+93 limit : int
+94
+95 def validate ( self ) -> None :
+96 _validate_int_literal ( "limit" , self . limit , 1 , 10000 )
+
+
+
+
+
+
+
+
+ Limit (limit : int )
+
+
+
+
+
+
+
+
+
+
+ limit : int
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
95 def validate ( self ) -> None :
+96 _validate_int_literal ( "limit" , self . limit , 1 , 10000 )
+
+
+
+
+
+
+
+
+
+
+
+ class
+ LimitBy (snuba_sdk.expressions.Expression ):
+
+ View Source
+
+
+
+ 47 class LimitBy ( Expression ):
+48 columns : Sequence [ Column ]
+49 count : int
+50
+51 def validate ( self ) -> None :
+52 validate_sequence_of_type ( "LimitBy columns" , self . columns , Column , 1 )
+53 if not isinstance ( self . count , int ) or self . count <= 0 or self . count > 10000 :
+54 raise InvalidExpressionError (
+55 "LimitBy count must be a positive integer (max 10,000)"
+56 )
+
+
+
+
+
+
+
+
+
LimitBy (columns : Sequence [ Column ] , count : int )
+
+
+
+
+
+
+
+
+
+
+
columns : Sequence[Column ]
+
+
+
+
+
+
+
+
+
+
+ count : int
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
51 def validate ( self ) -> None :
+52 validate_sequence_of_type ( "LimitBy columns" , self . columns , Column , 1 )
+53 if not isinstance ( self . count , int ) or self . count <= 0 or self . count > 10000 :
+54 raise InvalidExpressionError (
+55 "LimitBy count must be a positive integer (max 10,000)"
+56 )
+
+
+
+
+
+
+
+
+
+
+
+ class
+ Metric :
+
+ View Source
+
+
+
+ 24 class Metric :
+25 """
+26 Metric represents a raw metric that is being populated. It can be created with
+27 one of public name, mri or raw ID.
+28 """
+29
+30 public_name : str | None = None
+31 mri : str | None = None
+32 id : int | None = None
+33 entity : str | None = None
+34
+35 def __post_init__ ( self ) -> None :
+36 self . validate ()
+37
+38 def get_fields ( self ) -> Sequence [ str ]:
+39 self_fields = fields ( self ) # Verified the order in the Python source
+40 return tuple ( f . name for f in self_fields )
+41
+42 def validate ( self ) -> None :
+43 if self . public_name is not None and not isinstance ( self . public_name , str ):
+44 raise InvalidTimeseriesError ( "public_name must be a string" )
+45 if self . mri is not None and not isinstance ( self . mri , str ):
+46 raise InvalidTimeseriesError ( "mri must be a string" )
+47 if self . id is not None and not isinstance ( self . id , int ):
+48 raise InvalidTimeseriesError ( "id must be an integer" )
+49 if self . entity is not None and not isinstance ( self . entity , str ):
+50 raise InvalidTimeseriesError ( "entity must be a string" )
+51
+52 if all ( v is None for v in ( self . public_name , self . mri , self . id )):
+53 raise InvalidTimeseriesError (
+54 "Metric must have at least one of public_name, mri or id"
+55 )
+56
+57 def set_mri ( self , mri : str ) -> Metric :
+58 if not isinstance ( mri , str ):
+59 raise InvalidExpressionError ( "mri must be an str" )
+60 return replace ( self , mri = mri )
+61
+62 def set_public_name ( self , public_name : str ) -> Metric :
+63 if not isinstance ( public_name , str ):
+64 raise InvalidExpressionError ( "public_name must be an str" )
+65 return replace ( self , public_name = public_name )
+66
+67 def set_id ( self , id : int ) -> Metric :
+68 if not isinstance ( id , int ):
+69 raise InvalidExpressionError ( "id must be an int" )
+70 return replace ( self , id = id )
+71
+72 def set_entity ( self , entity : str ) -> Metric :
+73 if not isinstance ( entity , str ):
+74 raise InvalidExpressionError ( "entity must be an str" )
+75 return replace ( self , entity = entity )
+
+
+
+ Metric represents a raw metric that is being populated. It can be created with
+one of public name, mri or raw ID.
+
+
+
+
+
+
+ Metric ( public_name : 'str | None' = None , mri : 'str | None' = None , id : 'int | None' = None , entity : 'str | None' = None )
+
+
+
+
+
+
+
+
+
+
+ public_name : 'str | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ mri : 'str | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ id : 'int | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ entity : 'str | None' =
+None
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ get_fields (self ) -> Sequence [ str ] :
+
+ View Source
+
+
+
+
38 def get_fields ( self ) -> Sequence [ str ]:
+39 self_fields = fields ( self ) # Verified the order in the Python source
+40 return tuple ( f . name for f in self_fields )
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
42 def validate ( self ) -> None :
+43 if self . public_name is not None and not isinstance ( self . public_name , str ):
+44 raise InvalidTimeseriesError ( "public_name must be a string" )
+45 if self . mri is not None and not isinstance ( self . mri , str ):
+46 raise InvalidTimeseriesError ( "mri must be a string" )
+47 if self . id is not None and not isinstance ( self . id , int ):
+48 raise InvalidTimeseriesError ( "id must be an integer" )
+49 if self . entity is not None and not isinstance ( self . entity , str ):
+50 raise InvalidTimeseriesError ( "entity must be a string" )
+51
+52 if all ( v is None for v in ( self . public_name , self . mri , self . id )):
+53 raise InvalidTimeseriesError (
+54 "Metric must have at least one of public_name, mri or id"
+55 )
+
+
+
+
+
+
+
+
+
+
+
def
+
set_mri (self , mri : str ) -> Metric :
+
+
View Source
+
+
+
+
57 def set_mri ( self , mri : str ) -> Metric :
+58 if not isinstance ( mri , str ):
+59 raise InvalidExpressionError ( "mri must be an str" )
+60 return replace ( self , mri = mri )
+
+
+
+
+
+
+
+
+
+
+
def
+
set_public_name (self , public_name : str ) -> Metric :
+
+
View Source
+
+
+
+
62 def set_public_name ( self , public_name : str ) -> Metric :
+63 if not isinstance ( public_name , str ):
+64 raise InvalidExpressionError ( "public_name must be an str" )
+65 return replace ( self , public_name = public_name )
+
+
+
+
+
+
+
+
+
+
+
def
+
set_id (self , id : int ) -> Metric :
+
+
View Source
+
+
+
+
67 def set_id ( self , id : int ) -> Metric :
+68 if not isinstance ( id , int ):
+69 raise InvalidExpressionError ( "id must be an int" )
+70 return replace ( self , id = id )
+
+
+
+
+
+
+
+
+
+
+
def
+
set_entity (self , entity : str ) -> Metric :
+
+
View Source
+
+
+
+
72 def set_entity ( self , entity : str ) -> Metric :
+73 if not isinstance ( entity , str ):
+74 raise InvalidExpressionError ( "entity must be an str" )
+75 return replace ( self , entity = entity )
+
+
+
+
+
+
+
+
+
+
+
+ class
+ MetricsQuery (snuba_sdk.query.BaseQuery ):
+
+ View Source
+
+
+
+ 18 class MetricsQuery ( BaseQuery ):
+ 19 """
+ 20 A query on a set of timeseries. This class gets translated into a Snuba request string
+ 21 that returns a list of timeseries data. In order to allow this class to be built incrementally,
+ 22 it is not validated until it is serialized. Any specified filters or groupby fields are pushed
+ 23 down to each of the Timeseries in the query field. It is immutable, so any set functions return
+ 24 a new copy of the query, which also allows chaining calls.
+ 25
+ 26 This class is distinct from the Query class to allow for more specific validation and to provide
+ 27 a simpler syntax for writing timeseries queries, which have fewer available features.
+ 28 """
+ 29
+ 30 query : Timeseries | Formula | None = None
+ 31 start : datetime | None = None
+ 32 end : datetime | None = None
+ 33 rollup : Rollup | None = None
+ 34 scope : MetricsScope | None = None
+ 35 limit : Limit | None = None
+ 36 offset : Offset | None = None
+ 37 indexer_mappings : dict [ str , str | int ] | None = None
+ 38
+ 39 def _replace ( self , field : str , value : Any ) -> MetricsQuery :
+ 40 new = replace ( self , ** { field : value })
+ 41 return new
+ 42
+ 43 def set_query ( self , query : Formula | Timeseries ) -> MetricsQuery :
+ 44 if not isinstance ( query , ( Formula , Timeseries )):
+ 45 raise InvalidQueryError ( "query must be a Formula or Timeseries" )
+ 46 return self . _replace ( "query" , query )
+ 47
+ 48 def set_start ( self , start : datetime ) -> MetricsQuery :
+ 49 if not isinstance ( start , datetime ):
+ 50 raise InvalidQueryError ( "start must be a datetime" )
+ 51 return self . _replace ( "start" , start )
+ 52
+ 53 def set_end ( self , end : datetime ) -> MetricsQuery :
+ 54 if not isinstance ( end , datetime ):
+ 55 raise InvalidQueryError ( "end must be a datetime" )
+ 56 return self . _replace ( "end" , end )
+ 57
+ 58 def set_rollup ( self , rollup : Rollup ) -> MetricsQuery :
+ 59 if not isinstance ( rollup , Rollup ):
+ 60 raise InvalidQueryError ( "rollup must be a Rollup" )
+ 61 return self . _replace ( "rollup" , rollup )
+ 62
+ 63 def set_scope ( self , scope : MetricsScope ) -> MetricsQuery :
+ 64 if not isinstance ( scope , MetricsScope ):
+ 65 raise InvalidQueryError ( "scope must be a MetricsScope" )
+ 66 return self . _replace ( "scope" , scope )
+ 67
+ 68 def set_limit ( self , limit : int ) -> MetricsQuery :
+ 69 return self . _replace ( "limit" , Limit ( limit ))
+ 70
+ 71 def set_offset ( self , offset : int ) -> MetricsQuery :
+ 72 return self . _replace ( "offset" , Offset ( offset ))
+ 73
+ 74 def set_indexer_mappings (
+ 75 self , indexer_mappings : dict [ str , str | int ]
+ 76 ) -> MetricsQuery :
+ 77 return self . _replace ( "indexer_mappings" , indexer_mappings )
+ 78
+ 79 def validate ( self ) -> None :
+ 80 Validator () . visit ( self )
+ 81
+ 82 def __str__ ( self ) -> str :
+ 83 result = PRETTY_PRINTER . visit ( self )
+ 84 assert isinstance ( result , str )
+ 85 return result
+ 86
+ 87 def serialize ( self ) -> str :
+ 88 self . validate ()
+ 89 result = SNQL_PRINTER . visit ( self )
+ 90 assert isinstance ( result , str )
+ 91 return result
+ 92
+ 93 def print ( self ) -> str :
+ 94 self . validate ()
+ 95 result = PRETTY_PRINTER . visit ( self )
+ 96 assert isinstance ( result , str )
+ 97 return result
+ 98
+ 99 def serialize_to_mql ( self ) -> dict [ str , str | dict [ str , Any ]]:
+100 # TODO: when the new MQL snuba endpoint is ready, this method will replace .serialize()
+101 self . validate ()
+102 result = MQL_PRINTER . visit ( self )
+103 assert isinstance ( result , dict )
+104 return result
+
+
+
+ A query on a set of timeseries. This class gets translated into a Snuba request string
+that returns a list of timeseries data. In order to allow this class to be built incrementally,
+it is not validated until it is serialized. Any specified filters or groupby fields are pushed
+down to each of the Timeseries in the query field. It is immutable, so any set functions return
+a new copy of the query, which also allows chaining calls.
+
+
This class is distinct from the Query class to allow for more specific validation and to provide
+a simpler syntax for writing timeseries queries, which have fewer available features.
+
+
+
+
+
+
+ MetricsQuery ( query : 'Timeseries | Formula | None' = None , start : 'datetime | None' = None , end : 'datetime | None' = None , rollup : 'Rollup | None' = None , scope : 'MetricsScope | None' = None , limit : 'Limit | None' = None , offset : 'Offset | None' = None , indexer_mappings : 'dict[str, str | int] | None' = None )
+
+
+
+
+
+
+
+
+
+
+ query : 'Timeseries | Formula | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ start : 'datetime | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ end : 'datetime | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ rollup : 'Rollup | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ scope : 'MetricsScope | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ limit : 'Limit | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ offset : 'Offset | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ indexer_mappings : 'dict[str, str | int] | None' =
+None
+
+
+
+
+
+
+
+
+
+
+
+
+
def
+
set_query ( self , query : 'Formula | Timeseries' ) -> MetricsQuery :
+
+
View Source
+
+
+
+
43 def set_query ( self , query : Formula | Timeseries ) -> MetricsQuery :
+44 if not isinstance ( query , ( Formula , Timeseries )):
+45 raise InvalidQueryError ( "query must be a Formula or Timeseries" )
+46 return self . _replace ( "query" , query )
+
+
+
+
+
+
+
+
+
+
+
def
+
set_start (self , start : datetime . datetime ) -> MetricsQuery :
+
+
View Source
+
+
+
+
48 def set_start ( self , start : datetime ) -> MetricsQuery :
+49 if not isinstance ( start , datetime ):
+50 raise InvalidQueryError ( "start must be a datetime" )
+51 return self . _replace ( "start" , start )
+
+
+
+
+
+
+
+
+
+
+
def
+
set_end (self , end : datetime . datetime ) -> MetricsQuery :
+
+
View Source
+
+
+
+
53 def set_end ( self , end : datetime ) -> MetricsQuery :
+54 if not isinstance ( end , datetime ):
+55 raise InvalidQueryError ( "end must be a datetime" )
+56 return self . _replace ( "end" , end )
+
+
+
+
+
+
+
+
+
+
+
58 def set_rollup ( self , rollup : Rollup ) -> MetricsQuery :
+59 if not isinstance ( rollup , Rollup ):
+60 raise InvalidQueryError ( "rollup must be a Rollup" )
+61 return self . _replace ( "rollup" , rollup )
+
+
+
+
+
+
+
+
+
+
+
63 def set_scope ( self , scope : MetricsScope ) -> MetricsQuery :
+64 if not isinstance ( scope , MetricsScope ):
+65 raise InvalidQueryError ( "scope must be a MetricsScope" )
+66 return self . _replace ( "scope" , scope )
+
+
+
+
+
+
+
+
+
+
+
def
+
set_limit (self , limit : int ) -> MetricsQuery :
+
+
View Source
+
+
+
+
68 def set_limit ( self , limit : int ) -> MetricsQuery :
+69 return self . _replace ( "limit" , Limit ( limit ))
+
+
+
+
+
+
+
+
+
+
+
def
+
set_offset (self , offset : int ) -> MetricsQuery :
+
+
View Source
+
+
+
+
71 def set_offset ( self , offset : int ) -> MetricsQuery :
+72 return self . _replace ( "offset" , Offset ( offset ))
+
+
+
+
+
+
+
+
+
+
+
def
+
set_indexer_mappings ( self , indexer_mappings : 'dict[str, str | int]' ) -> MetricsQuery :
+
+
View Source
+
+
+
+
74 def set_indexer_mappings (
+75 self , indexer_mappings : dict [ str , str | int ]
+76 ) -> MetricsQuery :
+77 return self . _replace ( "indexer_mappings" , indexer_mappings )
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
79 def validate ( self ) -> None :
+80 Validator () . visit ( self )
+
+
+
+
+
+
+
+
+
+
+ def
+ serialize (self ) -> str :
+
+ View Source
+
+
+
+
87 def serialize ( self ) -> str :
+88 self . validate ()
+89 result = SNQL_PRINTER . visit ( self )
+90 assert isinstance ( result , str )
+91 return result
+
+
+
+
+
+
+
+
+
+
+ def
+ print (self ) -> str :
+
+ View Source
+
+
+
+
93 def print ( self ) -> str :
+94 self . validate ()
+95 result = PRETTY_PRINTER . visit ( self )
+96 assert isinstance ( result , str )
+97 return result
+
+
+
+
+
+
+
+
+
+
+ def
+ serialize_to_mql (self ) -> 'dict[str, str | dict[str, Any]]' :
+
+ View Source
+
+
+
+
99 def serialize_to_mql ( self ) -> dict [ str , str | dict [ str , Any ]]:
+100 # TODO: when the new MQL snuba endpoint is ready, this method will replace .serialize()
+101 self . validate ()
+102 result = MQL_PRINTER . visit ( self )
+103 assert isinstance ( result , dict )
+104 return result
+
+
+
+
+
+
+
+
Inherited Members
+
+
snuba_sdk.query.BaseQuery
+ get_fields
+
+
+
+
+
+
+
+
+
+ class
+ MetricsScope :
+
+ View Source
+
+
+
+ 227 class MetricsScope :
+228 """
+229 This contains all the meta information necessary to resolve a metric and to safely query
+230 the metrics dataset. All these values get automatically added to the query conditions.
+231 The idea of this class is to contain all the filter values that are not represented by
+232 tags in the API.
+233
+234 use_case_id is treated separately since it can be derived separate from the MRIs of the
+235 metrics in the outer query.
+236 """
+237
+238 org_ids : list [ int ]
+239 project_ids : list [ int ]
+240 use_case_id : str | None = None
+241
+242 def __post_init__ ( self ) -> None :
+243 self . validate ()
+244
+245 def validate ( self ) -> None :
+246 if not list_type ( self . org_ids , ( int ,)):
+247 raise InvalidExpressionError ( "org_ids must be a list of integers" )
+248
+249 if not list_type ( self . project_ids , ( int ,)):
+250 raise InvalidExpressionError ( "project_ids must be a list of integers" )
+251
+252 if self . use_case_id is not None and not isinstance ( self . use_case_id , str ):
+253 raise InvalidExpressionError ( "use_case_id must be an str" )
+254
+255 def set_use_case_id ( self , use_case_id : str ) -> MetricsScope :
+256 if not isinstance ( use_case_id , str ):
+257 raise InvalidExpressionError ( "use_case_id must be an str" )
+258 return replace ( self , use_case_id = use_case_id )
+
+
+
+ This contains all the meta information necessary to resolve a metric and to safely query
+the metrics dataset. All these values get automatically added to the query conditions.
+The idea of this class is to contain all the filter values that are not represented by
+tags in the API.
+
+
use_case_id is treated separately since it can be derived separate from the MRIs of the
+metrics in the outer query.
+
+
+
+
+
+
+ MetricsScope ( org_ids : 'list[int]' , project_ids : 'list[int]' , use_case_id : 'str | None' = None )
+
+
+
+
+
+
+
+
+
+
+ org_ids : 'list[int]'
+
+
+
+
+
+
+
+
+
+
+ project_ids : 'list[int]'
+
+
+
+
+
+
+
+
+
+
+ use_case_id : 'str | None' =
+None
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
245 def validate ( self ) -> None :
+246 if not list_type ( self . org_ids , ( int ,)):
+247 raise InvalidExpressionError ( "org_ids must be a list of integers" )
+248
+249 if not list_type ( self . project_ids , ( int ,)):
+250 raise InvalidExpressionError ( "project_ids must be a list of integers" )
+251
+252 if self . use_case_id is not None and not isinstance ( self . use_case_id , str ):
+253 raise InvalidExpressionError ( "use_case_id must be an str" )
+
+
+
+
+
+
+
+
+
+
+
def
+
set_use_case_id (self , use_case_id : str ) -> MetricsScope :
+
+
View Source
+
+
+
+
255 def set_use_case_id ( self , use_case_id : str ) -> MetricsScope :
+256 if not isinstance ( use_case_id , str ):
+257 raise InvalidExpressionError ( "use_case_id must be an str" )
+258 return replace ( self , use_case_id = use_case_id )
+
+
+
+
+
+
+
+
+
+ MQLContext
+
+
+
+
+
+
+
+
+
+
+
+
+ class
+ Offset (snuba_sdk.expressions.Expression ):
+
+ View Source
+
+
+
+ 100 class Offset ( Expression ):
+101 offset : int
+102
+103 def validate ( self ) -> None :
+104 _validate_int_literal ( "offset" , self . offset , 0 , None )
+
+
+
+
+
+
+
+
+ Offset (offset : int )
+
+
+
+
+
+
+
+
+
+
+ offset : int
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
103 def validate ( self ) -> None :
+104 _validate_int_literal ( "offset" , self . offset , 0 , None )
+
+
+
+
+
+
+
+
+
+
+
+ class
+ Op (enum.Enum ):
+
+ View Source
+
+
+
+ 22 class Op ( Enum ):
+23 GT = ">"
+24 LT = "<"
+25 GTE = ">="
+26 LTE = "<="
+27 EQ = "="
+28 NEQ = "!="
+29 IN = "IN"
+30 NOT_IN = "NOT IN"
+31 LIKE = "LIKE"
+32 NOT_LIKE = "NOT LIKE"
+33 IS_NULL = "IS NULL"
+34 IS_NOT_NULL = "IS NOT NULL"
+35 NOT = "!"
+
+
+
+
+
+
+
+
+
GT =
+
<Op.GT : '>'>
+
+
+
+
+
+
+
+
+
+
+
LT =
+
<Op.LT : '<'>
+
+
+
+
+
+
+
+
+
+
+
+
+
EQ =
+
<Op.EQ : '='>
+
+
+
+
+
+
+
+
+
+
+
+
IN =
+
<Op.IN : 'IN'>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Inherited Members
+
+
enum.Enum
+ name
+ value
+
+
+
+
+
+
+
+
+
+ 142 class Or ( BooleanCondition ):
+143 op : BooleanOp = field ( init = False , default = BooleanOp . OR )
+144 conditions : ConditionGroup = field ( default_factory = list )
+
+
+
+
+
+
+
+
+
+
Inherited Members
+
+
+
+
+
+
+
+
+
+ class
+ OrderBy (snuba_sdk.expressions.Expression ):
+
+ View Source
+
+
+
+ 17 class OrderBy ( Expression ):
+18 exp : Union [ Column , CurriedFunction , Function ]
+19 direction : Direction
+20
+21 def validate ( self ) -> None :
+22 if not isinstance ( self . exp , ( Column , CurriedFunction , Function )):
+23 raise InvalidExpressionError (
+24 "OrderBy expression must be a Column, CurriedFunction or Function"
+25 )
+26 if not isinstance ( self . direction , Direction ):
+27 raise InvalidExpressionError ( "OrderBy direction must be a Direction" )
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
21 def validate ( self ) -> None :
+22 if not isinstance ( self . exp , ( Column , CurriedFunction , Function )):
+23 raise InvalidExpressionError (
+24 "OrderBy expression must be a Column, CurriedFunction or Function"
+25 )
+26 if not isinstance ( self . direction , Direction ):
+27 raise InvalidExpressionError ( "OrderBy direction must be a Direction" )
+
+
+
+
+
+
+
+
+
+
+
+ class
+ Query (snuba_sdk.query.BaseQuery ):
+
+ View Source
+
+
+
+ 56 class Query ( BaseQuery ):
+ 57 """
+ 58 A code representation of a SnQL query. It is immutable, so any set functions
+ 59 return a new copy of the query. Unlike Expressions it is possible to
+ 60 instantiate a Query that is invalid. Any of the translation functions will
+ 61 validate the query before translating them, so the query must be valid before
+ 62 they are called.
+ 63 """
+ 64
+ 65 # These must be listed in the order that they must appear in the SnQL query.
+ 66 match : Union [ Entity , Join , Query ]
+ 67 select : Optional [ Sequence [ SelectableExpression ]] = None
+ 68 groupby : Optional [ Sequence [ SelectableExpression ]] = None
+ 69 array_join : Optional [ Sequence [ Column ]] = None
+ 70 where : Optional [ ConditionGroup ] = None
+ 71 having : Optional [ ConditionGroup ] = None
+ 72 orderby : Optional [ Sequence [ OrderBy ]] = None
+ 73 limitby : Optional [ LimitBy ] = None
+ 74 limit : Optional [ Limit ] = None
+ 75 offset : Optional [ Offset ] = None
+ 76 granularity : Optional [ Granularity ] = None
+ 77 totals : Optional [ Totals ] = None
+ 78
+ 79 def __post_init__ ( self ) -> None :
+ 80 """
+ 81 This has a different validation flow from normal expressions, since a query
+ 82 is not necessarily always correct. For example, you can create a Query with
+ 83 no select columns, which will fail in the validate. However it shouldn't fail
+ 84 right away since the select columns can be added later.
+ 85
+ 86 """
+ 87 if not isinstance ( self . match , ( Query , Join , Entity )):
+ 88 raise InvalidQueryError ( "queries must have a valid Entity, Join or Query" )
+ 89
+ 90 if isinstance ( self . match , Query ):
+ 91 try :
+ 92 self . match . validate ()
+ 93 except Exception as e :
+ 94 raise InvalidQueryError ( f "inner query is invalid: { e } " ) from e
+ 95
+ 96 def _replace ( self , field : str , value : Any ) -> Query :
+ 97 new = replace ( self , ** { field : value })
+ 98 return new
+ 99
+100 def set_match ( self , match : Union [ Entity , Join , Query ]) -> Query :
+101 if not isinstance ( match , ( Entity , Join , Query )):
+102 raise InvalidQueryError ( f " { match } must be a valid Entity, Join or Query" )
+103 elif isinstance ( match , Query ):
+104 try :
+105 match . validate ()
+106 except Exception as e :
+107 raise InvalidQueryError ( f "inner query is invalid: { e } " ) from e
+108
+109 return self . _replace ( "match" , match )
+110
+111 def set_select ( self , select : Sequence [ SelectableExpression ]) -> Query :
+112 if not list_type ( select , SelectableExpressionType ) or not select :
+113 raise InvalidQueryError (
+114 "select clause must be a non-empty list of SelectableExpression"
+115 )
+116 return self . _replace ( "select" , select )
+117
+118 def set_groupby ( self , groupby : Sequence [ SelectableExpression ]) -> Query :
+119 if not list_type ( groupby , SelectableExpressionType ):
+120 raise InvalidQueryError (
+121 "groupby clause must be a list of SelectableExpression"
+122 )
+123 return self . _replace ( "groupby" , groupby )
+124
+125 def set_array_join ( self , array_join : Sequence [ Column ]) -> Query :
+126 if not list_type ( array_join , [ Column ]) or len ( array_join ) < 1 :
+127 raise InvalidQueryError ( "array join must be a non-empty list of Column" )
+128
+129 return self . _replace ( "array_join" , array_join )
+130
+131 def set_where ( self , conditions : ConditionGroup ) -> Query :
+132 if not list_type ( conditions , ( BooleanCondition , Condition )):
+133 raise InvalidQueryError ( "where clause must be a list of conditions" )
+134 return self . _replace ( "where" , conditions )
+135
+136 def set_having ( self , conditions : ConditionGroup ) -> Query :
+137 if not list_type ( conditions , ( BooleanCondition , Condition )):
+138 raise InvalidQueryError ( "having clause must be a list of conditions" )
+139 return self . _replace ( "having" , conditions )
+140
+141 def set_orderby ( self , orderby : Sequence [ OrderBy ]) -> Query :
+142 if not list_type ( orderby , ( OrderBy ,)):
+143 raise InvalidQueryError ( "orderby clause must be a list of OrderBy" )
+144 return self . _replace ( "orderby" , orderby )
+145
+146 def set_limitby ( self , limitby : LimitBy ) -> Query :
+147 if not isinstance ( limitby , LimitBy ):
+148 raise InvalidQueryError ( "limitby clause must be a LimitBy" )
+149 return self . _replace ( "limitby" , limitby )
+150
+151 def set_limit ( self , limit : int ) -> Query :
+152 return self . _replace ( "limit" , Limit ( limit ))
+153
+154 def set_offset ( self , offset : int ) -> Query :
+155 return self . _replace ( "offset" , Offset ( offset ))
+156
+157 def set_granularity ( self , granularity : int ) -> Query :
+158 return self . _replace ( "granularity" , Granularity ( granularity ))
+159
+160 def set_totals ( self , totals : bool ) -> Query :
+161 return self . _replace ( "totals" , Totals ( totals ))
+162
+163 def validate ( self ) -> None :
+164 VALIDATOR . visit ( self )
+165
+166 def __str__ ( self ) -> str :
+167 return self . serialize ()
+168
+169 def serialize ( self ) -> str :
+170 self . validate ()
+171 return PRINTER . visit ( self )
+172
+173 def print ( self ) -> str :
+174 self . validate ()
+175 return PRETTY_PRINTER . visit ( self )
+
+
+
+ A code representation of a SnQL query. It is immutable, so any set functions
+return a new copy of the query. Unlike Expressions it is possible to
+instantiate a Query that is invalid. Any of the translation functions will
+validate the query before translating them, so the query must be valid before
+they are called.
+
+
+
+
+
+
+
Query ( match : Union [ Entity , Join , Query ] , select : Union [ Sequence [ Union [ AliasedExpression , Column , CurriedFunction , Function ]], NoneType ] = None , groupby : Union [ Sequence [ Union [ AliasedExpression , Column , CurriedFunction , Function ]], NoneType ] = None , array_join : Union [ Sequence [ Column ], NoneType ] = None , where : Union [ Sequence [ Union [ BooleanCondition , Condition ]], NoneType ] = None , having : Union [ Sequence [ Union [ BooleanCondition , Condition ]], NoneType ] = None , orderby : Union [ Sequence [ OrderBy ], NoneType ] = None , limitby : Union [ LimitBy , NoneType ] = None , limit : Union [ Limit , NoneType ] = None , offset : Union [ Offset , NoneType ] = None , granularity : Union [ Granularity , NoneType ] = None , totals : Union [ Totals , NoneType ] = None )
+
+
+
+
+
+
+
+
+
+
+
+
+
+
array_join : Union[Sequence[Column ], NoneType] =
+
None
+
+
+
+
+
+
+
+
+
+
+
+
+
orderby : Union[Sequence[OrderBy ], NoneType] =
+
None
+
+
+
+
+
+
+
+
+
+
+
limitby : Union[LimitBy , NoneType] =
+
None
+
+
+
+
+
+
+
+
+
+
+
limit : Union[Limit , NoneType] =
+
None
+
+
+
+
+
+
+
+
+
+
+
offset : Union[Offset , NoneType] =
+
None
+
+
+
+
+
+
+
+
+
+
+
granularity : Union[Granularity , NoneType] =
+
None
+
+
+
+
+
+
+
+
+
+
+
totals : Union[Totals , NoneType] =
+
None
+
+
+
+
+
+
+
+
+
+
+
+
+
100 def set_match ( self , match : Union [ Entity , Join , Query ]) -> Query :
+101 if not isinstance ( match , ( Entity , Join , Query )):
+102 raise InvalidQueryError ( f " { match } must be a valid Entity, Join or Query" )
+103 elif isinstance ( match , Query ):
+104 try :
+105 match . validate ()
+106 except Exception as e :
+107 raise InvalidQueryError ( f "inner query is invalid: { e } " ) from e
+108
+109 return self . _replace ( "match" , match )
+
+
+
+
+
+
+
+
+
+
+
111 def set_select ( self , select : Sequence [ SelectableExpression ]) -> Query :
+112 if not list_type ( select , SelectableExpressionType ) or not select :
+113 raise InvalidQueryError (
+114 "select clause must be a non-empty list of SelectableExpression"
+115 )
+116 return self . _replace ( "select" , select )
+
+
+
+
+
+
+
+
+
+
+
118 def set_groupby ( self , groupby : Sequence [ SelectableExpression ]) -> Query :
+119 if not list_type ( groupby , SelectableExpressionType ):
+120 raise InvalidQueryError (
+121 "groupby clause must be a list of SelectableExpression"
+122 )
+123 return self . _replace ( "groupby" , groupby )
+
+
+
+
+
+
+
+
+
+
+
def
+
set_array_join ( self , array_join : Sequence [ Column ] ) -> Query :
+
+
View Source
+
+
+
+
125 def set_array_join ( self , array_join : Sequence [ Column ]) -> Query :
+126 if not list_type ( array_join , [ Column ]) or len ( array_join ) < 1 :
+127 raise InvalidQueryError ( "array join must be a non-empty list of Column" )
+128
+129 return self . _replace ( "array_join" , array_join )
+
+
+
+
+
+
+
+
+
+
+
131 def set_where ( self , conditions : ConditionGroup ) -> Query :
+132 if not list_type ( conditions , ( BooleanCondition , Condition )):
+133 raise InvalidQueryError ( "where clause must be a list of conditions" )
+134 return self . _replace ( "where" , conditions )
+
+
+
+
+
+
+
+
+
+
+
136 def set_having ( self , conditions : ConditionGroup ) -> Query :
+137 if not list_type ( conditions , ( BooleanCondition , Condition )):
+138 raise InvalidQueryError ( "having clause must be a list of conditions" )
+139 return self . _replace ( "having" , conditions )
+
+
+
+
+
+
+
+
+
+
+
def
+
set_orderby ( self , orderby : Sequence [ OrderBy ] ) -> Query :
+
+
View Source
+
+
+
+
141 def set_orderby ( self , orderby : Sequence [ OrderBy ]) -> Query :
+142 if not list_type ( orderby , ( OrderBy ,)):
+143 raise InvalidQueryError ( "orderby clause must be a list of OrderBy" )
+144 return self . _replace ( "orderby" , orderby )
+
+
+
+
+
+
+
+
+
+
+
def
+
set_limitby (self , limitby : LimitBy ) -> Query :
+
+
View Source
+
+
+
+
146 def set_limitby ( self , limitby : LimitBy ) -> Query :
+147 if not isinstance ( limitby , LimitBy ):
+148 raise InvalidQueryError ( "limitby clause must be a LimitBy" )
+149 return self . _replace ( "limitby" , limitby )
+
+
+
+
+
+
+
+
+
+
+
def
+
set_limit (self , limit : int ) -> Query :
+
+
View Source
+
+
+
+
151 def set_limit ( self , limit : int ) -> Query :
+152 return self . _replace ( "limit" , Limit ( limit ))
+
+
+
+
+
+
+
+
+
+
+
def
+
set_offset (self , offset : int ) -> Query :
+
+
View Source
+
+
+
+
154 def set_offset ( self , offset : int ) -> Query :
+155 return self . _replace ( "offset" , Offset ( offset ))
+
+
+
+
+
+
+
+
+
+
+
def
+
set_granularity (self , granularity : int ) -> Query :
+
+
View Source
+
+
+
+
157 def set_granularity ( self , granularity : int ) -> Query :
+158 return self . _replace ( "granularity" , Granularity ( granularity ))
+
+
+
+
+
+
+
+
+
+
+
def
+
set_totals (self , totals : bool ) -> Query :
+
+
View Source
+
+
+
+
160 def set_totals ( self , totals : bool ) -> Query :
+161 return self . _replace ( "totals" , Totals ( totals ))
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
163 def validate ( self ) -> None :
+164 VALIDATOR . visit ( self )
+
+
+
+
+
+
+
+
+
+
+ def
+ serialize (self ) -> str :
+
+ View Source
+
+
+
+
169 def serialize ( self ) -> str :
+170 self . validate ()
+171 return PRINTER . visit ( self )
+
+
+
+
+
+
+
+
+
+
+ def
+ print (self ) -> str :
+
+ View Source
+
+
+
+
173 def print ( self ) -> str :
+174 self . validate ()
+175 return PRETTY_PRINTER . visit ( self )
+
+
+
+
+
+
+
+
Inherited Members
+
+
snuba_sdk.query.BaseQuery
+ get_fields
+
+
+
+
+
+
+
+
+
+ class
+ Relationship (snuba_sdk.expressions.Expression ):
+
+ View Source
+
+
+
+ 12 class Relationship ( Expression ):
+13 """
+14 A representation of a relationship between two Entities. The relationship
+15 name should be defined in the data model of the LHS and entity in Snuba.
+16 Both Entities must have a valid alias, which will be used to qualify the
+17 columns in the SnQL query.
+18
+19 :param lhs: The Entity that owns the relationship.
+20 :type name: Entity
+21 :param name: The name of the relationship on the LHS Entity.
+22 :type name: str
+23 :param rhs: The Entity connected to the LHS using the relationship.
+24 :type name: Entity
+25
+26 :raises InvalidExpressionError: If the incorrect types are used or if either
+27 of the Entities does not have an alias.
+28
+29 """
+30
+31 lhs : Entity
+32 name : str
+33 rhs : Entity
+34
+35 def validate ( self ) -> None :
+36 def valid_entity ( e : Any ) -> None :
+37 if not isinstance ( e , Entity ):
+38 raise InvalidExpressionError ( f "' { e } ' must be an Entity" )
+39 elif e . alias is None :
+40 raise InvalidExpressionError ( f " { e } must have a valid alias" )
+41
+42 valid_entity ( self . lhs )
+43 valid_entity ( self . rhs )
+44
+45 if not isinstance ( self . name , str ) or not self . name :
+46 raise InvalidExpressionError (
+47 f "' { self . name } ' is not a valid relationship name"
+48 )
+
+
+
+ A representation of a relationship between two Entities. The relationship
+name should be defined in the data model of the LHS and entity in Snuba.
+Both Entities must have a valid alias, which will be used to qualify the
+columns in the SnQL query.
+
+
Parameters
+
+
+lhs : The Entity that owns the relationship.
+name : The name of the relationship on the LHS Entity.
+rhs : The Entity connected to the LHS using the relationship.
+
+
+
Raises
+
+
+InvalidExpressionError : If the incorrect types are used or if either
+of the Entities does not have an alias.
+
+
+
+
+
+
+
+
Relationship ( lhs : Entity , name : str , rhs : Entity )
+
+
+
+
+
+
+
+
+
+
+
+ name : str
+
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
35 def validate ( self ) -> None :
+36 def valid_entity ( e : Any ) -> None :
+37 if not isinstance ( e , Entity ):
+38 raise InvalidExpressionError ( f "' { e } ' must be an Entity" )
+39 elif e . alias is None :
+40 raise InvalidExpressionError ( f " { e } must have a valid alias" )
+41
+42 valid_entity ( self . lhs )
+43 valid_entity ( self . rhs )
+44
+45 if not isinstance ( self . name , str ) or not self . name :
+46 raise InvalidExpressionError (
+47 f "' { self . name } ' is not a valid relationship name"
+48 )
+
+
+
+
+
+
+
+
+
+
+
+ class
+ Request :
+
+ View Source
+
+
+
+ 47 class Request :
+ 48 dataset : str
+ 49 app_id : str
+ 50 query : BaseQuery
+ 51 flags : Flags = field ( default_factory = Flags )
+ 52 parent_api : str = "<unknown>"
+ 53 tenant_ids : dict [ str , str | int ] = field ( default_factory = dict )
+ 54
+ 55 def validate ( self ) -> None :
+ 56 if not self . dataset or not isinstance ( self . dataset , str ):
+ 57 raise InvalidRequestError ( "Request must have a valid dataset" )
+ 58 elif not FLAG_RE . match ( self . dataset ):
+ 59 raise InvalidRequestError ( f "' { self . dataset } ' is not a valid dataset" )
+ 60
+ 61 if not self . app_id or not isinstance ( self . app_id , str ):
+ 62 raise InvalidRequestError ( "Request must have a valid app_id" )
+ 63 if not FLAG_RE . match ( self . app_id ):
+ 64 raise InvalidRequestError ( f "' { self . app_id } ' is not a valid app_id" )
+ 65
+ 66 if not self . parent_api or not isinstance ( self . parent_api , str ):
+ 67 raise InvalidRequestError ( f "` { self . parent_api } ` is not a valid parent_api" )
+ 68
+ 69 if not isinstance ( self . tenant_ids , dict ):
+ 70 raise InvalidRequestError ( "Request must have a `tenant_ids` dictionary" )
+ 71
+ 72 self . query . validate ()
+ 73 if self . flags is not None :
+ 74 self . flags . validate ()
+ 75
+ 76 def to_dict ( self , mql : bool = False ) -> dict [ str , bool | str | dict [ str , Any ]]:
+ 77 self . validate ()
+ 78 flags = self . flags . to_dict () if self . flags is not None else {}
+ 79
+ 80 # ret: dict[str, bool | str | dict[str, str | int]] = {}
+ 81 # Feature flag just for initial testing
+ 82 mql_context = None
+ 83 if mql and isinstance ( self . query , MetricsQuery ):
+ 84 serialized_mql = self . query . serialize_to_mql ()
+ 85 mql_context = serialized_mql [ "mql_context" ]
+ 86 query = str ( serialized_mql [ "mql" ])
+ 87 else :
+ 88 query = self . query . serialize ()
+ 89
+ 90 ret : dict [ str , bool | str | dict [ str , Any ]] = {
+ 91 ** flags ,
+ 92 "query" : query ,
+ 93 "dataset" : self . dataset ,
+ 94 "app_id" : self . app_id ,
+ 95 "tenant_ids" : self . tenant_ids ,
+ 96 "parent_api" : self . parent_api ,
+ 97 }
+ 98 if mql_context is not None :
+ 99 ret [ "mql_context" ] = mql_context
+100 return ret
+101
+102 def serialize ( self ) -> str :
+103 return json . dumps ( self . to_dict ())
+104
+105 def serialize_mql ( self ) -> str :
+106 # NOTE: This function is temporary, just to help with a cutover in the Sentry codebase.
+107 # It will be removed in a future version.
+108 return json . dumps ( self . to_dict ( mql = True ))
+109
+110 def __str__ ( self ) -> str :
+111 return self . serialize ()
+112
+113 def print ( self , mql : bool = False ) -> str :
+114 self . validate ()
+115 output = self . to_dict ( mql )
+116 return json . dumps ( output , sort_keys = True , indent = 4 * " " )
+
+
+
+
+
+
+
+
+
Request ( dataset : str , app_id : str , query : snuba_sdk . query . BaseQuery , flags : Flags = < factory > , parent_api : str = '<unknown>' , tenant_ids : 'dict[str, str | int]' = < factory > )
+
+
+
+
+
+
+
+
+
+
+ dataset : str
+
+
+
+
+
+
+
+
+
+
+ app_id : str
+
+
+
+
+
+
+
+
+
+
+ query : snuba_sdk.query.BaseQuery
+
+
+
+
+
+
+
+
+
+
+
+ parent_api : str =
+'<unknown>'
+
+
+
+
+
+
+
+
+
+
+ tenant_ids : 'dict[str, str | int]'
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
55 def validate ( self ) -> None :
+56 if not self . dataset or not isinstance ( self . dataset , str ):
+57 raise InvalidRequestError ( "Request must have a valid dataset" )
+58 elif not FLAG_RE . match ( self . dataset ):
+59 raise InvalidRequestError ( f "' { self . dataset } ' is not a valid dataset" )
+60
+61 if not self . app_id or not isinstance ( self . app_id , str ):
+62 raise InvalidRequestError ( "Request must have a valid app_id" )
+63 if not FLAG_RE . match ( self . app_id ):
+64 raise InvalidRequestError ( f "' { self . app_id } ' is not a valid app_id" )
+65
+66 if not self . parent_api or not isinstance ( self . parent_api , str ):
+67 raise InvalidRequestError ( f "` { self . parent_api } ` is not a valid parent_api" )
+68
+69 if not isinstance ( self . tenant_ids , dict ):
+70 raise InvalidRequestError ( "Request must have a `tenant_ids` dictionary" )
+71
+72 self . query . validate ()
+73 if self . flags is not None :
+74 self . flags . validate ()
+
+
+
+
+
+
+
+
+
+
+ def
+ to_dict (self , mql : bool = False ) -> 'dict[str, bool | str | dict[str, Any]]' :
+
+ View Source
+
+
+
+
76 def to_dict ( self , mql : bool = False ) -> dict [ str , bool | str | dict [ str , Any ]]:
+ 77 self . validate ()
+ 78 flags = self . flags . to_dict () if self . flags is not None else {}
+ 79
+ 80 # ret: dict[str, bool | str | dict[str, str | int]] = {}
+ 81 # Feature flag just for initial testing
+ 82 mql_context = None
+ 83 if mql and isinstance ( self . query , MetricsQuery ):
+ 84 serialized_mql = self . query . serialize_to_mql ()
+ 85 mql_context = serialized_mql [ "mql_context" ]
+ 86 query = str ( serialized_mql [ "mql" ])
+ 87 else :
+ 88 query = self . query . serialize ()
+ 89
+ 90 ret : dict [ str , bool | str | dict [ str , Any ]] = {
+ 91 ** flags ,
+ 92 "query" : query ,
+ 93 "dataset" : self . dataset ,
+ 94 "app_id" : self . app_id ,
+ 95 "tenant_ids" : self . tenant_ids ,
+ 96 "parent_api" : self . parent_api ,
+ 97 }
+ 98 if mql_context is not None :
+ 99 ret [ "mql_context" ] = mql_context
+100 return ret
+
+
+
+
+
+
+
+
+
+
+ def
+ serialize (self ) -> str :
+
+ View Source
+
+
+
+
102 def serialize ( self ) -> str :
+103 return json . dumps ( self . to_dict ())
+
+
+
+
+
+
+
+
+
+
+ def
+ serialize_mql (self ) -> str :
+
+ View Source
+
+
+
+
105 def serialize_mql ( self ) -> str :
+106 # NOTE: This function is temporary, just to help with a cutover in the Sentry codebase.
+107 # It will be removed in a future version.
+108 return json . dumps ( self . to_dict ( mql = True ))
+
+
+
+
+
+
+
+
+
+
+ def
+ print (self , mql : bool = False ) -> str :
+
+ View Source
+
+
+
+
113 def print ( self , mql : bool = False ) -> str :
+114 self . validate ()
+115 output = self . to_dict ( mql )
+116 return json . dumps ( output , sort_keys = True , indent = 4 * " " )
+
+
+
+
+
+
+
+
+
+
+
+ class
+ Rollup :
+
+ View Source
+
+
+
+ 173 class Rollup :
+174 """
+175 Rollup instructs how the timeseries queries should be grouped on time. If the query is for a set of timeseries, then
+176 the interval field should be specified. It is the number of seconds to group the timeseries by.
+177 For a query that returns only the totals, specify Totals(True). A totals query can be ordered using the orderby field.
+178 If totals is set to True and the interval is specified, then an extra row will be returned in the result with the totals
+179 for the timeseries.
+180 """
+181
+182 interval : int | None = None
+183 totals : bool | None = None
+184 orderby : Direction | None = None # TODO: This doesn't make sense: ordered by what?
+185 granularity : int | None = None
+186
+187 def __post_init__ ( self ) -> None :
+188 self . validate ()
+189
+190 def validate ( self ) -> None :
+191 # The interval is used to determine how the timestamp is rolled up in the group by of the query.
+192 # The granularity is separate since it ultimately determines which data we retrieve.
+193 if self . granularity and self . granularity not in ALLOWED_GRANULARITIES :
+194 raise InvalidExpressionError (
+195 f "granularity must be an integer and one of { ALLOWED_GRANULARITIES } "
+196 )
+197
+198 if self . interval is not None :
+199 _validate_int_literal (
+200 "interval" , self . interval , 10 , None
+201 ) # Minimum 10 seconds
+202 if self . granularity is not None and self . interval < self . granularity :
+203 raise InvalidExpressionError (
+204 "interval must be greater than or equal to granularity"
+205 )
+206
+207 if self . totals is not None :
+208 if not isinstance ( self . totals , bool ):
+209 raise InvalidExpressionError ( "totals must be a boolean" )
+210
+211 if self . interval is None and self . totals is None :
+212 raise InvalidExpressionError (
+213 "Rollup must have at least one of interval or totals"
+214 )
+215
+216 if self . orderby is not None :
+217 if not isinstance ( self . orderby , Direction ):
+218 raise InvalidExpressionError ( "orderby must be a Direction object" )
+219
+220 if self . interval is not None and self . orderby is not None :
+221 raise InvalidExpressionError (
+222 "Timeseries queries can't be ordered when using interval"
+223 )
+
+
+
+ Rollup instructs how the timeseries queries should be grouped on time. If the query is for a set of timeseries, then
+the interval field should be specified. It is the number of seconds to group the timeseries by.
+For a query that returns only the totals, specify Totals(True). A totals query can be ordered using the orderby field.
+If totals is set to True and the interval is specified, then an extra row will be returned in the result with the totals
+for the timeseries.
+
+
+
+
+
+
+ Rollup ( interval : 'int | None' = None , totals : 'bool | None' = None , orderby : 'Direction | None' = None , granularity : 'int | None' = None )
+
+
+
+
+
+
+
+
+
+
+ interval : 'int | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ totals : 'bool | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ orderby : 'Direction | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ granularity : 'int | None' =
+None
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
190 def validate ( self ) -> None :
+191 # The interval is used to determine how the timestamp is rolled up in the group by of the query.
+192 # The granularity is separate since it ultimately determines which data we retrieve.
+193 if self . granularity and self . granularity not in ALLOWED_GRANULARITIES :
+194 raise InvalidExpressionError (
+195 f "granularity must be an integer and one of { ALLOWED_GRANULARITIES } "
+196 )
+197
+198 if self . interval is not None :
+199 _validate_int_literal (
+200 "interval" , self . interval , 10 , None
+201 ) # Minimum 10 seconds
+202 if self . granularity is not None and self . interval < self . granularity :
+203 raise InvalidExpressionError (
+204 "interval must be greater than or equal to granularity"
+205 )
+206
+207 if self . totals is not None :
+208 if not isinstance ( self . totals , bool ):
+209 raise InvalidExpressionError ( "totals must be a boolean" )
+210
+211 if self . interval is None and self . totals is None :
+212 raise InvalidExpressionError (
+213 "Rollup must have at least one of interval or totals"
+214 )
+215
+216 if self . orderby is not None :
+217 if not isinstance ( self . orderby , Direction ):
+218 raise InvalidExpressionError ( "orderby must be a Direction object" )
+219
+220 if self . interval is not None and self . orderby is not None :
+221 raise InvalidExpressionError (
+222 "Timeseries queries can't be ordered when using interval"
+223 )
+
+
+
+
+
+
+
+
+
+
+
+ class
+ Timeseries :
+
+ View Source
+
+
+
+ 79 class Timeseries :
+ 80 """
+ 81 A code representation of a single timeseries. This is the basic unit of a metrics query.
+ 82 A raw metric, aggregated by an aggregate function. It can be filtered by tag conditions.
+ 83 It can also grouped by a set of tag values, which will return one timeseries for each unique
+ 84 grouping of tag values.
+ 85 """
+ 86
+ 87 metric : Metric
+ 88 aggregate : str
+ 89 aggregate_params : list [ Any ] | None = None
+ 90 filters : ConditionGroup | None = None
+ 91 groupby : list [ Column | AliasedExpression ] | None = None
+ 92
+ 93 def __post_init__ ( self ) -> None :
+ 94 self . validate ()
+ 95
+ 96 def get_fields ( self ) -> Sequence [ str ]:
+ 97 self_fields = fields ( self ) # Verified the order in the Python source
+ 98 return tuple ( f . name for f in self_fields )
+ 99
+100 def validate ( self ) -> None :
+101 if not isinstance ( self . metric , Metric ):
+102 raise InvalidTimeseriesError ( "metric must be an instance of a Metric" )
+103 self . metric . validate ()
+104
+105 # TODO: Restrict which specific aggregates are allowed
+106 # TODO: Validate aggregate_params based on the aggregate supplied e.g. quantile needs a float
+107 if not isinstance ( self . aggregate , str ):
+108 raise InvalidTimeseriesError ( "aggregate must be a string" )
+109 if self . aggregate_params is not None :
+110 if not isinstance ( self . aggregate_params , list ):
+111 raise InvalidTimeseriesError ( "aggregate_params must be a list" )
+112 for p in self . aggregate_params :
+113 if not is_literal ( p ):
+114 raise InvalidTimeseriesError (
+115 "aggregate_params can only be literal types"
+116 )
+117
+118 # TODO: Validate these are tag conditions only
+119 # TODO: Validate these are simple conditions e.g. tag[x] op literal
+120 if self . filters is not None :
+121 if not isinstance ( self . filters , list ):
+122 raise InvalidTimeseriesError ( "filters must be a list" )
+123 for f in self . filters :
+124 if not isinstance ( f , ( Condition , BooleanCondition )):
+125 raise InvalidTimeseriesError ( "filters must be a list of Conditions" )
+126
+127 # TODO: Can you group by meta information like project_id?
+128 # TODO: Validate these are appropriate columns for grouping
+129 if self . groupby is not None :
+130 if not isinstance ( self . groupby , list ):
+131 raise InvalidTimeseriesError ( "groupby must be a list" )
+132 for g in self . groupby :
+133 if not isinstance ( g , ( Column , AliasedExpression )):
+134 raise InvalidTimeseriesError (
+135 "groupby must be a list of Columns or AliasedExpression"
+136 )
+137
+138 def set_metric ( self , metric : Metric ) -> Timeseries :
+139 if not isinstance ( metric , Metric ):
+140 raise InvalidTimeseriesError ( "metric must be a Metric" )
+141 return replace ( self , metric = metric )
+142
+143 def set_aggregate (
+144 self , aggregate : str , aggregate_params : list [ Any ] | None = None
+145 ) -> Timeseries :
+146 if not isinstance ( aggregate , str ):
+147 raise InvalidTimeseriesError ( "aggregate must be a str" )
+148 if aggregate_params is not None and not isinstance ( aggregate_params , list ):
+149 raise InvalidTimeseriesError ( "aggregate_params must be a list" )
+150 return replace ( self , aggregate = aggregate , aggregate_params = aggregate_params )
+151
+152 def set_filters ( self , filters : ConditionGroup | None ) -> Timeseries :
+153 if filters is not None and not list_type (
+154 filters , ( BooleanCondition , Condition )
+155 ):
+156 raise InvalidTimeseriesError ( "filters must be a list of Conditions" )
+157 return replace ( self , filters = filters )
+158
+159 def set_groupby (
+160 self , groupby : list [ Column | AliasedExpression ] | None
+161 ) -> Timeseries :
+162 if groupby is not None and not list_type ( groupby , ( Column , AliasedExpression )):
+163 raise InvalidTimeseriesError (
+164 "groupby must be a list of Columns or AliasedExpression"
+165 )
+166 return replace ( self , groupby = groupby )
+
+
+
+ A code representation of a single timeseries. This is the basic unit of a metrics query.
+A raw metric, aggregated by an aggregate function. It can be filtered by tag conditions.
+It can also grouped by a set of tag values, which will return one timeseries for each unique
+grouping of tag values.
+
+
+
+
+
+
+
Timeseries ( metric : Metric , aggregate : str , aggregate_params : 'list[Any] | None' = None , filters : 'ConditionGroup | None' = None , groupby : 'list[Column | AliasedExpression] | None' = None )
+
+
+
+
+
+
+
+
+
+
+
+ aggregate : str
+
+
+
+
+
+
+
+
+
+
+ aggregate_params : 'list[Any] | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ filters : 'ConditionGroup | None' =
+None
+
+
+
+
+
+
+
+
+
+
+ groupby : 'list[Column | AliasedExpression] | None' =
+None
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ get_fields (self ) -> Sequence [ str ] :
+
+ View Source
+
+
+
+
96 def get_fields ( self ) -> Sequence [ str ]:
+97 self_fields = fields ( self ) # Verified the order in the Python source
+98 return tuple ( f . name for f in self_fields )
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
100 def validate ( self ) -> None :
+101 if not isinstance ( self . metric , Metric ):
+102 raise InvalidTimeseriesError ( "metric must be an instance of a Metric" )
+103 self . metric . validate ()
+104
+105 # TODO: Restrict which specific aggregates are allowed
+106 # TODO: Validate aggregate_params based on the aggregate supplied e.g. quantile needs a float
+107 if not isinstance ( self . aggregate , str ):
+108 raise InvalidTimeseriesError ( "aggregate must be a string" )
+109 if self . aggregate_params is not None :
+110 if not isinstance ( self . aggregate_params , list ):
+111 raise InvalidTimeseriesError ( "aggregate_params must be a list" )
+112 for p in self . aggregate_params :
+113 if not is_literal ( p ):
+114 raise InvalidTimeseriesError (
+115 "aggregate_params can only be literal types"
+116 )
+117
+118 # TODO: Validate these are tag conditions only
+119 # TODO: Validate these are simple conditions e.g. tag[x] op literal
+120 if self . filters is not None :
+121 if not isinstance ( self . filters , list ):
+122 raise InvalidTimeseriesError ( "filters must be a list" )
+123 for f in self . filters :
+124 if not isinstance ( f , ( Condition , BooleanCondition )):
+125 raise InvalidTimeseriesError ( "filters must be a list of Conditions" )
+126
+127 # TODO: Can you group by meta information like project_id?
+128 # TODO: Validate these are appropriate columns for grouping
+129 if self . groupby is not None :
+130 if not isinstance ( self . groupby , list ):
+131 raise InvalidTimeseriesError ( "groupby must be a list" )
+132 for g in self . groupby :
+133 if not isinstance ( g , ( Column , AliasedExpression )):
+134 raise InvalidTimeseriesError (
+135 "groupby must be a list of Columns or AliasedExpression"
+136 )
+
+
+
+
+
+
+
+
+
+
+
138 def set_metric ( self , metric : Metric ) -> Timeseries :
+139 if not isinstance ( metric , Metric ):
+140 raise InvalidTimeseriesError ( "metric must be a Metric" )
+141 return replace ( self , metric = metric )
+
+
+
+
+
+
+
+
+
+
+
def
+
set_aggregate ( self , aggregate : str , aggregate_params : 'list[Any] | None' = None ) -> Timeseries :
+
+
View Source
+
+
+
+
143 def set_aggregate (
+144 self , aggregate : str , aggregate_params : list [ Any ] | None = None
+145 ) -> Timeseries :
+146 if not isinstance ( aggregate , str ):
+147 raise InvalidTimeseriesError ( "aggregate must be a str" )
+148 if aggregate_params is not None and not isinstance ( aggregate_params , list ):
+149 raise InvalidTimeseriesError ( "aggregate_params must be a list" )
+150 return replace ( self , aggregate = aggregate , aggregate_params = aggregate_params )
+
+
+
+
+
+
+
+
+
+
+
def
+
set_filters ( self , filters : 'ConditionGroup | None' ) -> Timeseries :
+
+
View Source
+
+
+
+
152 def set_filters ( self , filters : ConditionGroup | None ) -> Timeseries :
+153 if filters is not None and not list_type (
+154 filters , ( BooleanCondition , Condition )
+155 ):
+156 raise InvalidTimeseriesError ( "filters must be a list of Conditions" )
+157 return replace ( self , filters = filters )
+
+
+
+
+
+
+
+
+
+
+
def
+
set_groupby ( self , groupby : 'list[Column | AliasedExpression] | None' ) -> Timeseries :
+
+
View Source
+
+
+
+
159 def set_groupby (
+160 self , groupby : list [ Column | AliasedExpression ] | None
+161 ) -> Timeseries :
+162 if groupby is not None and not list_type ( groupby , ( Column , AliasedExpression )):
+163 raise InvalidTimeseriesError (
+164 "groupby must be a list of Columns or AliasedExpression"
+165 )
+166 return replace ( self , groupby = groupby )
+
+
+
+
+
+
+
+
+
+
+
+ class
+ Totals (snuba_sdk.expressions.Expression ):
+
+ View Source
+
+
+
+ 116 class Totals ( Expression ):
+117 totals : bool
+118
+119 def validate ( self ) -> None :
+120 if not isinstance ( self . totals , bool ):
+121 raise InvalidExpressionError ( "totals must be a boolean" )
+
+
+
+
+
+
+
+
+ Totals (totals : bool )
+
+
+
+
+
+
+
+
+
+
+ totals : bool
+
+
+
+
+
+
+
+
+
+
+
+
+ def
+ validate (self ) -> None :
+
+ View Source
+
+
+
+
119 def validate ( self ) -> None :
+120 if not isinstance ( self . totals , bool ):
+121 raise InvalidExpressionError ( "totals must be a boolean" )
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file