@@ -98,8 +98,15 @@ ImmutableList<Task<?>> generateLiteSpecificQueries() {
9898 builder .add (operationStartsTask ());
9999 builder .add (warehouseEventsHistoryTask ());
100100 builder .add (warehouseMeteringTask ());
101+ builder .add (storageMetricsLiteTask ());
101102
102- for (AssessmentQuery item : generateAssessmentQueries ()) {
103+ ImmutableList <AssessmentQuery > liteAssessmentQueries =
104+ ImmutableList .of (
105+ AssessmentQuery .createShow ("WAREHOUSES" , Format .WAREHOUSES , LOWER_UNDERSCORE ),
106+ AssessmentQuery .createShow ("EXTERNAL TABLES" , Format .EXTERNAL_TABLES , LOWER_UNDERSCORE ),
107+ AssessmentQuery .createShow ("FUNCTIONS" , Format .FUNCTION_INFO , LOWER_UNDERSCORE ));
108+
109+ for (AssessmentQuery item : liteAssessmentQueries ) {
103110 String query = String .format (item .formatString , view , /* an empty WHERE clause */ "" );
104111 String zipName = item .zipEntryName ;
105112 Task <?> task = new JdbcSelectTask (zipName , query ).withHeaderTransformer (item .transformer ());
@@ -193,6 +200,59 @@ Task<?> reportDateRangeTask() {
193200 return new LiteTimeSeriesTask ("report_date_range.csv" , query , header );
194201 }
195202
203+ Task <?> storageMetricsLiteTask () {
204+ String selectList =
205+ String .join (
206+ ", " ,
207+ "table_catalog" ,
208+ "table_schema_id" ,
209+ "table_schema" ,
210+ "table_name" ,
211+ "id" ,
212+ "clone_group_id" ,
213+ "is_transient" ,
214+ "active_bytes" ,
215+ "time_travel_bytes" ,
216+ "failsafe_bytes" ,
217+ "retained_for_clone_bytes" ,
218+ "table_created" ,
219+ "table_dropped" ,
220+ "table_entered_failsafe" ,
221+ "catalog_created" ,
222+ "catalog_dropped" ,
223+ "schema_created" ,
224+ "schema_dropped" ,
225+ "comment" ,
226+ "deleted" );
227+ String view = "SNOWFLAKE.ACCOUNT_USAGE.TABLE_STORAGE_METRICS" ;
228+ String predicate =
229+ "deleted IS NULL" + " AND " + "schema_dropped IS NULL" + " AND " + "table_dropped IS NULL" ;
230+ String query = String .format ("SELECT %s FROM %s WHERE %s" , selectList , view , predicate );
231+ ImmutableList <String > header =
232+ ImmutableList .of (
233+ "TableCatalog" ,
234+ "TableSchemaId" ,
235+ "TableSchema" ,
236+ "TableName" ,
237+ "Id" ,
238+ "CloneGroupId" ,
239+ "IsTransient" ,
240+ "ActiveBytes" ,
241+ "TimeTravelBytes" ,
242+ "FailsafeBytes" ,
243+ "RetainedForCloneBytes" ,
244+ "TableCreated" ,
245+ "TableDropped" ,
246+ "TableEnteredFailsafe" ,
247+ "CatalogCreated" ,
248+ "CatalogDropped" ,
249+ "SchemaCreated" ,
250+ "SchemaDropped" ,
251+ "Comment" ,
252+ "Deleted" );
253+ return new LiteTimeSeriesTask ("table_storage_metrics-au.csv" , query , header );
254+ }
255+
196256 private static String buildQuery (String selectList , String view , String predicate ) {
197257 return String .format ("SELECT %s FROM %s WHERE %s" , selectList , view , predicate );
198258 }
0 commit comments