UNPKG

sls-dev-tools

Version:

The Dev Tools for the Serverless World

44 lines (34 loc) 2.03 kB
"use strict"; var _durationBarChart = require("../components/durationBarChart"); var _errorDonutChart = require("../components/errorDonutChart"); var _box = require("../components/box"); var _modalLayout = require("../components/modalLayout"); var _lambdaMetrics = require("../services/lambdaMetrics"); var _invocationCountLCD = require("../components/invocationCountLCD"); var _lambdaDeploymentsTable = require("../components/lambdaDeploymentsTable"); var _lambdaLayersTable = require("../components/lambdaLayersTable"); const lambdaStatisticsModal = async (screen, application, lambdaName, cloudwatchLogs, cloudwatch, lambda, lambdaFuncInfo) => { const lambdaStatisticsLayout = new _modalLayout.ModalLayout(screen, 112, 50, false); new _box.Box(lambdaStatisticsLayout, 110, 3, `Lambda Statistics - ${lambdaName}`); const durationChart = new _durationBarChart.DurationBarChart(application, cloudwatchLogs, false, lambdaStatisticsLayout, 55, 15); const errorChart = new _errorDonutChart.ErrorDonutChart(application, lambdaStatisticsLayout, cloudwatch, 55, 15); const invocationCount = new _invocationCountLCD.InvocationCountLCD(lambdaStatisticsLayout, 55, 15); const lambdaDeploymentsTable = new _lambdaDeploymentsTable.LambdaDeploymentsTable(lambdaStatisticsLayout, lambda, 55, 15); const lambdaLayersTable = new _lambdaLayersTable.LambdaLayersTable(lambdaStatisticsLayout, 55, 11); new _box.Box(lambdaStatisticsLayout, 110, 4, "ESC to close"); const metrics = await (0, _lambdaMetrics.getLambdaMetrics)(application, lambdaName, cloudwatch); invocationCount.updateData(metrics); errorChart.updateData(metrics); durationChart.updateData(lambdaName); lambdaDeploymentsTable.updateData(lambdaName); lambdaLayersTable.updateData(lambdaFuncInfo); lambdaStatisticsLayout.focus(); lambdaStatisticsLayout.key(["escape"], () => { application.setIsModalOpen(false); application.returnFocus(); lambdaStatisticsLayout.destroy(); }); }; module.exports = { lambdaStatisticsModal };