diff --git a/dashboards/lambdatest/lambdatest-logs.json b/dashboards/lambdatest/lambdatest-logs.json new file mode 100644 index 0000000000..6b5ac498a7 --- /dev/null +++ b/dashboards/lambdatest/lambdatest-logs.json @@ -0,0 +1,508 @@ +{ + "name": "LambdaTest Dashboard", + "description": null, + "pages": [ + { + "name": "LambdaTest - Test Overview", + "description": null, + "widgets": [ + { + "title": "Test Runs", + "layout": { + "column": 1, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) AS 'Tests' FROM Log WHERE `service-name`='lambdatest' AND `newrelic.source` = 'api.logs' SINCE 1 week ago\n" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Tests Completed", + "layout": { + "column": 5, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) AS 'Tests' FROM Log WHERE `service-name`='lambdatest' AND `newrelic.source` = 'api.logs' AND `status`='Completed' SINCE 1 week ago\n" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Tests Passed", + "layout": { + "column": 9, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) AS 'Tests' FROM Log WHERE `service-name`='lambdatest' AND `newrelic.source` = 'api.logs' AND `status`='Passed' SINCE 1 week ago\n" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Tests Failed", + "layout": { + "column": 1, + "row": 4, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) AS 'Tests' FROM Log WHERE `service-name`='lambdatest' AND `newrelic.source` = 'api.logs' AND `status`='Failed' SINCE 1 week ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Tests Errored", + "layout": { + "column": 7, + "row": 4, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) AS 'Errored Tests' \nFROM Log \nWHERE `service-name`='lambdatest' \nAND `newrelic.source` = 'api.logs' \nAND (status = 'Queue_Timeout' OR status = 'Idle_Timeout') \nSINCE 1 week ago\n" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Top 10 - Tests By OS", + "layout": { + "column": 1, + "row": 7, + "width": 6, + "height": 4 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.pie" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": true + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log \nWHERE `service-name`='lambdatest' \nAND `newrelic.source` = 'api.logs' \nAND test_env_os != '' \nAND test_env_os != '--'\nAND test_env_os != '-'\nFACET test_env_os \nLIMIT 10\nSINCE 1 week ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Top 10 - Tests by Browsers", + "layout": { + "column": 7, + "row": 7, + "width": 6, + "height": 4 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.pie" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": true + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log \nWHERE `service-name`='lambdatest' \nAND `newrelic.source` = 'api.logs' \nAND test_env_browser != '' \nAND test_env_browser != '--'\nAND test_env_browser != '-'\nFACET test_env_browser \nLIMIT 10\nSINCE 1 week ago\n" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Tests Execution Trend", + "layout": { + "column": 1, + "row": 11, + "width": 12, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) AS 'Test_Execution_Count' \nFROM Log \nWHERE `service-name` = 'lambdatest' \nAND `newrelic.source` = 'api.logs' \nSINCE 7 day ago\nTIMESERIES 1 hour\nCOMPARE WITH 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "yAxisLeft": { + "zero": true + } + } + }, + { + "title": "Queue Usage Trend", + "layout": { + "column": 1, + "row": 14, + "width": 12, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) AS 'Queued_Tests_Count'\nFROM Log\nWHERE `service-name`='lambdatest' \nAND `newrelic.source` = 'api.logs' \nAND test_id IS NOT NULL \nAND test_created_at IS NOT NULL \nAND test_started_at IS NOT NULL\nAND `test_created_at` != `test_started_at`\nSINCE 7 days ago\nTIMESERIES 1 hour\nCOMPARE WITH 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "yAxisLeft": { + "zero": true + } + } + } + ] + }, + { + "name": "LambdaTest - Test Error Overview", + "description": null, + "widgets": [ + { + "title": "Test Errors", + "layout": { + "column": 1, + "row": 1, + "width": 3, + "height": 2 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) AS Tests\nFROM Log\nWHERE `service-name`='lambdatest' \nAND `newrelic.source` = 'api.logs' \nAND status IN ('Lambda Error', 'Queue_Timeout', 'Idle_Timeout')\nAND test_id IS NOT NULL\nSINCE 1 week ago\n" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Idle Timeout", + "layout": { + "column": 4, + "row": 1, + "width": 3, + "height": 2 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) AS Tests\nFROM Log\nWHERE `service-name`='lambdatest' \nAND `newrelic.source` = 'api.logs' \nAND `status` = 'Idle_Timeout'\nAND test_id IS NOT NULL\nSINCE 1 week ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Queue Timeout", + "layout": { + "column": 7, + "row": 1, + "width": 3, + "height": 2 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) AS Tests\nFROM Log\nWHERE `service-name`='lambdatest' \nAND `newrelic.source` = 'api.logs' \nAND `status` = 'Queue_Timeout'\nAND test_id IS NOT NULL\nSINCE 1 week ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Lambda Error", + "layout": { + "column": 10, + "row": 1, + "width": 3, + "height": 2 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) AS Tests\nFROM Log\nWHERE `service-name`='lambdatest' \nAND `newrelic.source` = 'api.logs' \nAND `status` = 'Lambda Error'\nAND test_id IS NOT NULL\nSINCE 1 week ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Error Stats", + "layout": { + "column": 1, + "row": 3, + "width": 12, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) as Tests\nFROM Log\nWHERE status NOT IN ('Passed', 'Failed', 'Completed')\nFACET status\nSINCE 1 week ago TIMESERIES" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Error Message Categoriztion", + "layout": { + "column": 1, + "row": 6, + "width": 12, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.pie" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": true + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log\nWHERE `service-name`='lambdatest' \nAND `newrelic.source` = 'api.logs' \nAND error_message IS NOT NULL\nAND `error_message` != '-'\nFACET error_message\nLIMIT 10\nSINCE 1 week ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Test Status Ratio", + "layout": { + "column": 1, + "row": 9, + "width": 12, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT \n FILTER(count(*), WHERE status IN ('Lambda Error', 'Queue_Timeout', 'Idle_Timeout', 'Failed')) AS 'Failed',\n FILTER(count(*), WHERE status NOT IN ('Lambda Error', 'Queue_Timeout', 'Idle_Timeout', 'Failed')) AS 'Success'\nFROM Log\nWHERE `service-name`='lambdatest' \nAND `newrelic.source` = 'api.logs' \nAND test_id IS NOT NULL \nAND status IS NOT NULL \nSINCE 1 week ago TIMESERIES 1 hour" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Test Failure by Name", + "layout": { + "column": 1, + "row": 12, + "width": 12, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) \nFROM Log \nWHERE `service-name`='lambdatest' \nAND `newrelic.source` = 'api.logs' \nAND status IN ('Idle_Timeout', 'Queue_Timeout', 'Lambda Error')\nFACET test_name, hourOf(timestamp)\nSINCE 1 week ago TIMESERIES 1 hour\n" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + } + ] + } + ], + "variables": [] +} \ No newline at end of file diff --git a/dashboards/lambdatest/lambdatest01.png b/dashboards/lambdatest/lambdatest01.png new file mode 100644 index 0000000000..acbc5c6293 Binary files /dev/null and b/dashboards/lambdatest/lambdatest01.png differ diff --git a/dashboards/lambdatest/lambdatest02.png b/dashboards/lambdatest/lambdatest02.png new file mode 100644 index 0000000000..36f66f5c27 Binary files /dev/null and b/dashboards/lambdatest/lambdatest02.png differ diff --git a/dashboards/lambdatest/lambdatest03.png b/dashboards/lambdatest/lambdatest03.png new file mode 100644 index 0000000000..761926da08 Binary files /dev/null and b/dashboards/lambdatest/lambdatest03.png differ diff --git a/dashboards/lambdatest/lambdatest04.png b/dashboards/lambdatest/lambdatest04.png new file mode 100644 index 0000000000..26529ebba3 Binary files /dev/null and b/dashboards/lambdatest/lambdatest04.png differ diff --git a/dashboards/lambdatest/logo.png b/dashboards/lambdatest/logo.png new file mode 100644 index 0000000000..db3b782463 Binary files /dev/null and b/dashboards/lambdatest/logo.png differ diff --git a/data-sources/lambdatest/config.yml b/data-sources/lambdatest/config.yml new file mode 100644 index 0000000000..d7563d1edd --- /dev/null +++ b/data-sources/lambdatest/config.yml @@ -0,0 +1,9 @@ +id: lambdatest +displayName: LambdaTest +description: | + LambdaTest is an AI-powered test orchestration and execution platform to run manual and automated tests at scale. +install: + primary: + link: + url: https://www.lambdatest.com/support/docs/new-relic-integration/ +icon: logo.svg \ No newline at end of file diff --git a/data-sources/lambdatest/logo.svg b/data-sources/lambdatest/logo.svg new file mode 100644 index 0000000000..03d0f6a2a2 --- /dev/null +++ b/data-sources/lambdatest/logo.svg @@ -0,0 +1,3 @@ + + + diff --git a/quickstarts/lambdatest/config.yml b/quickstarts/lambdatest/config.yml new file mode 100644 index 0000000000..1ab5931a20 --- /dev/null +++ b/quickstarts/lambdatest/config.yml @@ -0,0 +1,58 @@ +slug: lambdatest +title: LambdaTest +description: | + ## About LambdaTest + ​ + LambdaTest is an AI-powered test orchestration and execution platform to run manual and automated tests at scale. With LambdaTest, developers and testers can test their websites and mobile applications across 3000+ real browsers, devices, and operating systems. + + ## About LambdaTest and New Relic Integration + + The integration of LambdaTest with New Relic offers a seamless experience for users aiming to optimize and monitor their stats during automated test execution. By bridging the gap between testing and performance monitoring, this integration brings forward an out-of-the-box dashboard that enables users to visualize and understand their testing metrics in real-time, set against the backdrop of broader application performance insights offered by New Relic. + + ## LambdaTest Dashboard and Visualization + + Upon successful integration, the LambdaTest Dashboard in New Relic becomes a hub of insights. This tailored interface showcases key testing metrics, offering a comprehensive perspective on your automated testing endeavors. Gain a high-level view of test executions, failures, and compatibility issues, ensuring you're always in the know about the quality of your web or mobile applications. + + ### Test Overview + + - Holistic view of automated testing activities. + - Displays key metrics such as test execution counts, pass rates, durations, etc. + - Insights on website compatibility across different browsers and devices. + - Immediate understanding of application's cross-browser functionality. + + ### Test Errors Overview + + - Focuses on discrepancies and anomalies in tests. + - Deep insights into test failures. + - Highlights the nature and frequency of errors. + - Provides information on environments where errors occurred. + +# Displayed in search results and recommendations. Summarizes a quickstarts functionality. + +summary: | + The LambdaTest Quickstart offers a streamlined entry into automated testing. With just a few clicks, users can instantly set up, monitor, and evaluate their application's performance across multiple browsers and devices, ensuring seamless user experiences everywhere. +level: Community +authors: + - Prateek Saini + - LambdaTest +keywords: + - lambdatest + - logs + - newrelic partner + - devops + - cicd + - testing + - cross-browser + - featured + - NR1_addData + +# Reference to install plans located under /install directory +# Allows us to construct reusable "install plans" and just use their ID in the quickstart config + +dataSourceIds: + - lambdatest + +icon: logo.svg +website: https://www.lambdatest.com/ +dashboards: + - lambdatest \ No newline at end of file diff --git a/quickstarts/lambdatest/logo.svg b/quickstarts/lambdatest/logo.svg new file mode 100644 index 0000000000..03d0f6a2a2 --- /dev/null +++ b/quickstarts/lambdatest/logo.svg @@ -0,0 +1,3 @@ + + +