@@ -285,44 +285,65 @@ const addTotalBucketCountToDatabaseIndexes = ({ databaseIndexes, indexesBucketCo
285285 } ) ;
286286} ;
287287
288- const fetchDatabaseMetadata = async ( { client, dbName, tablesInfo, logger } ) => {
288+ const logDiscoveredMetadataCount = ( { logger, label, items = [ ] } ) => {
289+ logger . log ( 'info' , { message : `Found ${ items . length } ${ label } .` } , 'Reverse Engineering' ) ;
290+ } ;
291+
292+ const fetchDatabaseMetadata = async ( { client, dbName, tablesInfo, logger, reverseEngineeringOptions } ) => {
293+ const { includeProcedures = false } = reverseEngineeringOptions ;
289294 const allUniqueSchemasAndTables = getAllUniqueSchemasAndTables ( { tablesInfo } ) ;
290295
291296 const rawDatabaseIndexes = await getDatabaseIndexes ( { client, dbName, tablesInfo, logger } ) ;
297+ logDiscoveredMetadataCount ( { logger, label : 'database indexes' , items : rawDatabaseIndexes } ) ;
298+
292299 const databaseCheckConstraints = await getDatabaseCheckConstraints ( {
293300 client,
294301 dbName,
295302 allUniqueSchemasAndTables,
296303 logger,
297304 } ) ;
305+ logDiscoveredMetadataCount ( { logger, label : 'check constraints' , items : databaseCheckConstraints } ) ;
306+
298307 const viewsIndexes = await getViewsIndexes ( { client, dbName, logger } ) ;
308+ logDiscoveredMetadataCount ( { logger, label : 'view indexes' , items : viewsIndexes } ) ;
309+
299310 const fullTextIndexes = await getFullTextIndexes ( {
300311 client,
301312 dbName,
302313 allUniqueSchemasAndTables,
303314 logger,
304315 } ) ;
316+ logDiscoveredMetadataCount ( { logger, label : 'full-text indexes' , items : fullTextIndexes } ) ;
317+
305318 const spatialIndexes = await getSpatialIndexes ( {
306319 client,
307320 dbName,
308321 allUniqueSchemasAndTables,
309322 logger,
310323 } ) ;
311- const procedures = await getDatabaseProcedures ( { client, dbName, logger } ) ;
324+ logDiscoveredMetadataCount ( { logger, label : 'spatial indexes' , items : spatialIndexes } ) ;
325+
326+ const procedures = await getDatabaseProcedures ( { client, dbName, logger, includeProcedures } ) ;
327+
312328 const indexesBucketCount = await getIndexesBucketCount ( {
313329 client,
314330 dbName,
315331 indexesId : rawDatabaseIndexes . map ( i => i . index_id ) ,
316332 logger,
317333 } ) ;
318334 const databaseUDT = await getDatabaseUserDefinedTypes ( { client, dbName, logger } ) ;
335+ logDiscoveredMetadataCount ( { logger, label : 'user-defined types' , items : databaseUDT } ) ;
336+
319337 const databaseMemoryOptimizedTables = await getDatabaseMemoryOptimizedTables ( { client, dbName, logger } ) ;
338+ logDiscoveredMetadataCount ( { logger, label : 'memory-optimized tables' , items : databaseMemoryOptimizedTables } ) ;
339+
320340 const xmlSchemaCollections = await getDatabaseXmlSchemaCollection ( {
321341 client,
322342 dbName,
323343 allUniqueSchemasAndTables,
324344 logger,
325345 } ) ;
346+ logDiscoveredMetadataCount ( { logger, label : 'xml schema collection usages' , items : xmlSchemaCollections } ) ;
326347
327348 const uniqueDatabaseIndexesColumns = getUniqueIndexesColumns ( { indexesColumns : rawDatabaseIndexes } ) ;
328349 const databaseIndexes = addTotalBucketCountToDatabaseIndexes ( {
@@ -564,7 +585,7 @@ const reverseCollectionsToJSON = async ({ client, tablesInfo, reverseEngineering
564585 fullTextIndexes,
565586 spatialIndexes,
566587 procedures,
567- } = await fetchDatabaseMetadata ( { client, dbName, tablesInfo, logger } ) ;
588+ } = await fetchDatabaseMetadata ( { client, dbName, tablesInfo, logger, reverseEngineeringOptions } ) ;
568589
569590 return processSchemas ( {
570591 tablesInfo,
0 commit comments