diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 2fabb8bea0..52e9b29343 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -142,6 +142,7 @@ /rum_roku/ @DataDog/rum-app @DataDog/rum-mobile /rundeck/ forrest@rundeck.com /scalr/ @soltysss @DataDog/ecosystems-review +/seagence/ @srinivas-bitla @DataDog/ecosystems-review /sedai/ @praveenprakash @DataDog/ecosystems-review /sendmail/ @dabcoder david.bouchare@datadoghq.com /signl4/ @rons4 ron@signl4.com @DataDog/ecosystems-review @@ -470,6 +471,9 @@ /scalr/*metadata.csv @soltysss @DataDog/documentation @DataDog/ecosystems-review /scalr/manifest.json @soltysss @DataDog/documentation @DataDog/ecosystems-review /scalr/README.md @soltysss @DataDog/documentation @DataDog/ecosystems-review +/seagence/*metadata.csv @srinivas-bitla @DataDog/documentation @DataDog/ecosystems-review +/seagence/manifest.json @srinivas-bitla @DataDog/documentation @DataDog/ecosystems-review +/seagence/README.md @srinivas-bitla @DataDog/documentation @DataDog/ecosystems-review /sendmail/*metadata.csv @dabcoder david.bouchare@datadoghq.com @DataDog/documentation /sendmail/manifest.json @dabcoder david.bouchare@datadoghq.com @DataDog/documentation /sendmail/README.md @dabcoder david.bouchare@datadoghq.com @DataDog/documentation diff --git a/seagence/CHANGELOG.md b/seagence/CHANGELOG.md new file mode 100644 index 0000000000..14d541a3ba --- /dev/null +++ b/seagence/CHANGELOG.md @@ -0,0 +1,4 @@ +# CHANGELOG - seagence + +## 1.0.0 / 2023-06-29 +* [Added] Initial Release diff --git a/seagence/README.md b/seagence/README.md new file mode 100644 index 0000000000..8b5cf4feb6 --- /dev/null +++ b/seagence/README.md @@ -0,0 +1,51 @@ +# Seagence + +## Overview + +[Seagence][1] is a defect monitoring platform for Java applications. Using ExecutionPath technology (aka GPS Tracker for transactions), Seagence detects unknown defects caused by various issues like swallowed exceptions, multithreading issues, and others, including defects that are disguised in a 200 success HTTP response code. + +With this integration, Seagence continuously analyzes the data stream from the Seagence agent to detect defects when they occur, including the root cause of the defect. When a defect is detected, the integration will send an event to Datadog to alert your team. Using the out-of-the-box dashboard, you have visibility into the detected defects and root causes to eliminate debugging and troubleshooting. More details can be found on [SeagenceWeb][2]. + +## Setup + +### Installation + +Visit [Seagence][1] to sign up for free. Once registered, navigate to the Seagence tile on the [Datadog Integrations page][5] and click **Install Integration**. Click **Connect Accounts** on the tile, which guides you through the Datadog OAuth2 flow to grant Seagence access to post Events to your Datadog account. + +### Configuration + +Using the `-javaagent` option, attach Seagence's Java agent to your application. Download the Java agent from your Seagence account. For more information, visit [getting started][3] on [Seagence][1]. + +## Uninstallation + +To remove the Datadog integration from Seagence: +1. Uninstall the integration from Datadog by clicking **Uninstall Integration**. Once you uninstall the integration, any previous authorizations are revoked. +2. Ensure that all API keys associated with the integration have been disabled by searching for the integration name on the [API Keys Management page][6]. +3. Remove the `-javaagent` option from your application's Java runtime parameters. + + +## Data Collected + +### Metrics + +Seagence does not include any metrics. + +### Service Checks + +Seagence does not include any service checks. + +### Events + +Seagence posts an event to Datadog upon detecting a defect. + +## Support + +Need help? Contact [Seagence support][4]. + + +[1]: https://www.seagence.com +[2]: https://app.seagence.com/SeagenceWeb/ +[3]: https://seagence.com/product/getting-started/ +[4]: mailto:info@seagence.com +[5]: https://app.datadoghq.com/integrations/seagence +[6]: https://app.datadoghq.com/organization-settings/api-keys?filter=Seagence diff --git a/seagence/assets/dashboards/seagence_overview.json b/seagence/assets/dashboards/seagence_overview.json new file mode 100644 index 0000000000..74db6d136f --- /dev/null +++ b/seagence/assets/dashboards/seagence_overview.json @@ -0,0 +1,158 @@ +{ + "title": "Seagence - Defects Overview", + "description": "This dashboard provides a high-level overview of defects detected by Seagence.", + "widgets": [ + { + "id": 2642781236158738, + "definition": { + "type": "image", + "url": "https://seagence.com/wp-content/uploads/2023/06/logo_with_wordmark_production-transparent-763x344-1.png", + "sizing": "cover", + "has_background": true, + "has_border": true, + "vertical_align": "center", + "horizontal_align": "center" + }, + "layout": { + "x": 0, + "y": 0, + "width": 4, + "height": 2 + } + }, + { + "id": 8585688290342750, + "definition": { + "title": "Defects Timeline", + "title_size": "16", + "title_align": "left", + "show_legend": true, + "legend_layout": "auto", + "legend_columns": [ + "avg", + "min", + "max", + "value", + "sum" + ], + "time": {}, + "type": "timeseries", + "requests": [ + { + "formulas": [ + { + "style": { + "palette": "warm", + "palette_index": 5 + }, + "alias": "defects", + "formula": "query1" + } + ], + "queries": [ + { + "data_source": "events", + "name": "query1", + "indexes": [ + "*" + ], + "compute": { + "aggregation": "count" + }, + "group_by": [], + "search": { + "query": "service:seagence" + } + } + ], + "response_format": "timeseries", + "style": { + "palette": "dog_classic", + "line_type": "solid", + "line_width": "normal" + }, + "display_type": "bars" + } + ] + }, + "layout": { + "x": 4, + "y": 0, + "width": 8, + "height": 4 + } + }, + { + "id": 4016470968177076, + "definition": { + "type": "note", + "content": "In the timeline view, defects are shown as vertical red bars. You can click any vertical bar to open the context menu. Click 'View related events' to open the defects as Datadog Events in the 'Events Explorer' dashboard.", + "background_color": "purple", + "font_size": "14", + "text_align": "left", + "vertical_align": "center", + "show_tick": true, + "tick_pos": "50%", + "tick_edge": "left", + "has_padding": true + }, + "layout": { + "x": 0, + "y": 2, + "width": 4, + "height": 2 + } + }, + { + "id": 492341163776362, + "definition": { + "type": "note", + "content": "This widget shows a list of defects including their root cause exception with complete stack trace.", + "background_color": "purple", + "font_size": "14", + "text_align": "left", + "vertical_align": "center", + "show_tick": true, + "tick_pos": "50%", + "tick_edge": "left", + "has_padding": true + }, + "layout": { + "x": 0, + "y": 4, + "width": 2, + "height": 2 + } + }, + { + "id": 4782735587208150, + "definition": { + "title": "Defects List", + "title_size": "16", + "title_align": "left", + "requests": [ + { + "response_format": "event_list", + "query": { + "query_string": "service:seagence", + "data_source": "event_stream", + "event_size": "l" + }, + "columns": [] + } + ], + "type": "list_stream" + }, + "layout": { + "x": 2, + "y": 4, + "width": 10, + "height": 10 + } + } + ], + "template_variables": [], + "layout_type": "ordered", + "notify_list": [], + "reflow_type": "fixed" +} \ No newline at end of file diff --git a/seagence/assets/eula.pdf b/seagence/assets/eula.pdf new file mode 100644 index 0000000000..1749ff2236 Binary files /dev/null and b/seagence/assets/eula.pdf differ diff --git a/seagence/assets/logos/logo.svg b/seagence/assets/logos/logo.svg new file mode 100644 index 0000000000..a9278a323b --- /dev/null +++ b/seagence/assets/logos/logo.svg @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/seagence/assets/monitors/defect_detection_monitor.json b/seagence/assets/monitors/defect_detection_monitor.json new file mode 100644 index 0000000000..50f01f9dcb --- /dev/null +++ b/seagence/assets/monitors/defect_detection_monitor.json @@ -0,0 +1,39 @@ +{ + "name": "Seagence Defect Detection Monitor", + "type": "event-v2 alert", + "query": "events(\"status:error service:seagence\").rollup(\"count\").last(\"5m\") > 0", + "message": "Seagence detected a defect. Visit SeagenceWeb for complete information.", + "tags": [ + "integration:seagence" + ], + "options": { + "thresholds": { + "critical": 0, + "period": { + "digit": 5, + "name": "5 minute average", + "no_data_timeframe": 10, + "seconds": 300, + "tense": "last", + "text": "5 minutes", + "unit": "minutes", + "value": "last_5m", + "timeString": "5m", + "unitAbbreviation": "m" + }, + "timeAggregator": "avg", + "comparison": ">" + }, + "enable_logs_sample": false, + "notify_audit": false, + "restriction_query": null, + "on_missing_data": "show_no_data", + "include_tags": false, + "silenced": {} + }, + "recommended_monitor_metadata": { + "description": "Alert when Seagence detects a defect." + }, + "priority": null, + "restricted_roles": null +} \ No newline at end of file diff --git a/seagence/assets/service_checks.json b/seagence/assets/service_checks.json new file mode 100644 index 0000000000..fe51488c70 --- /dev/null +++ b/seagence/assets/service_checks.json @@ -0,0 +1 @@ +[] diff --git a/seagence/images/datadog-dashboard.png b/seagence/images/datadog-dashboard.png new file mode 100644 index 0000000000..3a921b5964 Binary files /dev/null and b/seagence/images/datadog-dashboard.png differ diff --git a/seagence/images/defect-and-success-clusters.png b/seagence/images/defect-and-success-clusters.png new file mode 100644 index 0000000000..64ede47c45 Binary files /dev/null and b/seagence/images/defect-and-success-clusters.png differ diff --git a/seagence/images/defect-and-successexecution-paths-1440x810.png b/seagence/images/defect-and-successexecution-paths-1440x810.png new file mode 100644 index 0000000000..36cf486a3e Binary files /dev/null and b/seagence/images/defect-and-successexecution-paths-1440x810.png differ diff --git a/seagence/manifest.json b/seagence/manifest.json new file mode 100644 index 0000000000..b65c6ef2ef --- /dev/null +++ b/seagence/manifest.json @@ -0,0 +1,65 @@ +{ + "manifest_version": "2.0.0", + "app_uuid": "94f4e504-c98c-466f-b934-5e5ee0331944", + "app_id": "seagence", + "display_on_public_website": true, + "tile": { + "overview": "README.md#Overview", + "configuration": "README.md#Setup", + "uninstallation": "README.md#Uninstallation", + "support": "README.md#Support", + "changelog": "CHANGELOG.md", + "description": "Defect Monitoring and Root Cause Automation using Seagence", + "title": "Seagence", + "media": [ + { + "media_type": "image", + "caption": "Seagence Defects Overview dashboard", + "image_url": "images/datadog-dashboard.png" + }, + { + "media_type": "image", + "caption": "Success and Defect Execution Paths", + "image_url": "images/defect-and-successexecution-paths-1440x810.png" + }, + { + "media_type": "image", + "caption": "Defect and Success Clusters", + "image_url": "images/defect-and-success-clusters.png" + } + ], + "classifier_tags": [ + "Supported OS::Any", + "Submitted Data Type::Events", + "Category::Alerting", + "Category::Automation", + "Category::Event Management", + "Offering::Integration" + ] + }, + "assets": { + "integration": { + "source_type_name": "Seagence", + "configuration": {}, + "events": { + "creates_events": true + }, + "service_checks": { + "metadata_path": "assets/service_checks.json" + } + }, + "dashboards": { + "seagence_overview": "assets/dashboards/seagence_overview.json" + }, + "monitors": { + "Seagence Defect Detection": "assets/monitors/defect_detection_monitor.json" + } + }, + "author": { + "support_email": "support@seagence.com", + "name": "Seagence Technologies", + "homepage": "https://www.seagence.com/", + "sales_email": "info@seagence.com" + }, + "oauth": {} +}