ThousandEyes Documentation
  • ThousandEyes Documentation
  • What's New
    • Changelog
    • Naming and Navigation Menu Changes - Summary List
  • Product Documentation
    • Getting Started
      • Getting Started with Account Setup
      • Getting Started with Cloud and Enterprise Agents
      • Getting Started with Cloud and Enterprise Agent Tests
      • Getting Started with Endpoint Agents
      • Getting Started with Transactions
      • Getting Started with Dashboards
      • Getting Started with Alerts
      • Getting Started with Internet Insights
      • Getting Started with the ThousandEyes API
      • Getting Started with API Tests
      • Getting Support from ThousandEyes
      • Notification of Upgrades, Maintenance and Outages
      • New User FAQ
      • ThousandEyes Glossary
    • Global Vantage Points
      • Cloud Agents
        • Where Are Cloud Agents Available?
        • Webex Cloud Agents
        • AWS Wavelength Cloud Agents
        • Cloud Agent with Local Problems
      • Enterprise Agents
        • Getting Started
          • Where Can I Get the Account Group Token?
        • Installing
          • Enterprise Agent System Requirements
            • Enterprise Agent Support Lifecycle
          • Appliances
            • How to Set Up the Virtual Appliance
            • Enterprise Agents: Hypervisor Installation
            • Installing Enterprise Agent on VirtualBox
            • Enterprise Agent Deployment Using ThousandEyes Virtual Appliance (Hyper-V)
            • Enterprise Agent Deployment Using ThousandEyes Virtual Appliance (OVA)
            • Custom Virtual Appliances
            • Installing a Physical Appliance
            • Installing an Enterprise Agent on a Raspberry Pi Device
          • Cisco Devices
            • Catalyst Switching
            • Catalyst Routing
            • Nexus Switching
            • Service Routing
            • Meraki MX Appliances
            • Cisco Enterprise NFV Infrastructure Software
            • Installation Methods
              • Installing Enterprise Agents on Cisco Nexus Switches with Application Hosting
              • Installing Enterprise Agents on Cisco Nexus Switches with Guestshell
              • Installing Enterprise Agents on Cisco Routers using SD-WAN Manager Feature Templates
              • Installing Enterprise Agents on Cisco Routers using the SD-WAN Manager ThousandEyes Workflow
              • Installing Enterprise Agents on Cisco Switches with Docker
              • Installing Enterprise Agents on Cisco Routers with Docker
              • Installing Enterprise Agents on Cisco Switches with the DNA Center
          • Linux Packages
            • Enterprise Agent Deployment Using Linux Package Method
            • Installing the Enterprise Agent with BrowserBot on Oracle Linux Server 7
          • Docker Agents
            • Installing Enterprise Agents with Docker
          • Cloud Templates
            • Installing Enterprise Agents with Microsoft Azure
          • Docker Agent Configuration Options
          • Missing Dependencies for Enterprise Agent on Redhat Enterprise Linux RHEL 7 Installation
          • Migrating ThousandEyes Appliance or Package-Based Enterprise Agent to Docker
        • Configuring
          • Password Reset on the Virtual Appliance
          • Configuring rDNS Lookups for Enterprise Agents
          • Connecting to the ThousandEyes Virtual Appliance Using SSH (Mac/Linux)
          • Connecting to the ThousandEyes Virtual Appliance Using SSH (Windows)
          • Static IP Addresses for ThousandEyes Repositories
          • Firewall Configuration for Enterprise Agents
          • Enterprise Agent Port Forwarding
          • Security Policy and Public NTP Servers on Enterprise Agents
          • Secure Access to ThousandEyes Appliances
          • Disabling the Web Server of a Virtual Appliance
          • NAT Traversal for Agent-to-Agent Tests
          • Enterprise Agent on Docker Advanced Networking
        • Managing
          • Cisco Devices
            • Disable, Restart, or Uninstall the Enterprise Agent via DCNM
          • Docker Agents
            • Add/Remove BrowserBot from Existing Docker Enterprise Agents
          • Upgrading Operating Systems for Enterprise Agents
          • Backup and Restore Your Enterprise Agent Configuration
          • Upgrade Ubuntu 20.04 Focal-Based ThousandEyes Appliances
          • Crash Reporting for Enterprise Agents
          • Configuring a Local Mirror of the ThousandEyes Package Repository
          • Resetting an Enterprise Agent
          • Working with Enterprise Agent Clusters
          • Replacing an Enterprise Agent Using the Agent Clustering Method
          • Replacing an Enterprise Agent Using Agent Identity Files
          • Unlocking the ThousandEyes Appliance
          • Uninstalling the Enterprise Agent (Linux Package)
        • Proxy Environments
          • Installing Enterprise Agents in Proxy Environments
          • Configuring an Enterprise Agent to Use a Proxy Server
          • Writing and Testing Proxy Auto-Configuration (PAC) Files
        • Troubleshooting
          • How to Generate Packet Captures
          • Troubleshooting Automatic-Update Problems on Enterprise Agents
          • Troubleshooting Time Synchronization on Enterprise Agents
          • Installing CA Certificates on Enterprise Agents
          • Agent Unable to Trace Path to Destination?
          • BrowserBot Installation Fails on Red Hat or CentOS in Amazon EC2
          • What to Do If te-agent Stops Running Due to a VACUUM Error
        • Enterprise Agents: What Information Do We Collect?
        • What Is BrowserBot?
        • Upgrading to BrowserBot 2
        • Upgrading to BrowserBot 2.6+ (Chromium 97)
        • Enterprise Agent Utilization
        • Network Utilization from Enterprise Agent Test Traffic
        • Enterprise Agent Interface Selection
        • ThousandEyes Product Lifecycle Policy
      • Endpoint Agents
        • Installing
          • System Requirements
          • Download the Endpoint Agent Installer
          • Install the Endpoint Agent
          • Reinstall the Endpoint Agent
          • Install the Endpoint Agent Browser Extension
          • Install Endpoint Agents for Windows via Group Policy
          • Installing Browser Extensions for Windows via Group Policy
          • Guidance for Windows Software Deployment Teams
          • Install Endpoint Agents for macOS using Munki and the Managed Software Center
          • Deploy an MSI package to Intune for Windows Devices
          • Endpoint Agent Installation on Cisco Webex Devices (RoomOS)
          • Endpoint Agent Installation on Cisco Phone Devices (PhoneOS)
          • Uninstall or Delete an Endpoint Agent
          • Endpoint Agent Installation Reference
          • NPCAP Driver Upgrade Management
        • Configuring
          • Configure Endpoint Agent Labels
          • Endpoint Agent Proxy Configuration for Scheduled Tests
        • Managing
          • Manage Endpoint Agent Settings
        • How Does the Endpoint Agent Work
        • Cisco Secure Client ThousandEyes Endpoint Agent Module
        • Endpoint Agent Licensing
        • Assigning tests to an Endpoint Agent
        • Data Collected by Endpoint Agent
        • Reporting on data collected by Endpoint Agent
        • Endpoint Agent VPN Support
        • Endpoint Agent TCP Support
        • Endpoint Agent End-user Experience
        • Endpoint Agent FAQ
      • Working with Agent Settings
      • Obtaining a list of ThousandEyes Agent IP Addresses with te-iplist
    • Tests
      • HTTP Server Tests
        • Collecting Proxy Metrics
        • POSIX Extended Regular Expression Syntax (Quick Reference)
        • POSIX Extended Regular Expression Syntax
        • Custom User-Agent Strings in a Web Test
        • Two-Step HTTP Testing (OAuth)
      • Web-Layer Tests
      • Network Tests
        • Network Tests Explained
        • Agent-to-Agent Test Overview
        • DSCP Options in Network Tests
      • DNS Tests
      • Voice Tests
        • Using the SIP Server View
        • Using the RTP Stream View
      • BGP Tests
        • Inside-Out BGP Visibility
        • Using the BGP Route Visualization View
        • Using the BGP Updates Table
        • Working with Raw BGP Data
        • Reasons for Failure of Private Peering with ThousandEyes
        • RPKI
      • API Tests
        • Using the API Test Step Builder
      • Templates
        • User-defined Templates
      • Recommendations
        • Associated Service Recommendations
        • AWS Test Recommendations
      • ThousandEyes Metrics: What Do Your Results Mean?
      • Sharing Test Data
      • Working with Test Settings
      • Scheduled Versus Instant Tests
      • Working with Instant Tests
      • Working with Labels for Agent and Test Groups
      • Multi-Service Views
      • Identifying Traffic from ThousandEyes Agents
      • Excluding ThousandEyes Agents from Google Analytics
    • Internet and WAN Monitoring
      • Path Visualization
        • How Path Trace Works
        • MPLS Tunnel Inference Using Deep Path Analysis
        • Troubleshooting
          • Reasons for Missing Information on the Visualization View
          • Virtual Machine with NAT Breaks Path Visualization
          • Cisco ASA Breaks Path Visualization
          • Path Visualization: Edge Firewall Incorrectly Shows a Single Hop to the Destination
          • Network Overview Shows Packet Loss That Does Not Appear in Path Visualization
      • Views
        • Using the Network Overview
        • Using the FTP Server View
        • Using the HTTP Server View
        • Using the DNS Server View
        • Using the DNS Domain Trace View
        • Using the DNSSEC Trace View
        • Using the API Test Views
      • Troubleshooting
        • CLI Network Troubleshooting Utilities
        • HTTP Server Test Fails with SSL Error
        • HTTP Server Test Fails with SSL Error: OpenSSL SSL_connect: SSL_ERROR_SYSCALL
        • HTTP Server Test Error "dh Key Too Small"
    • Browser Synthetics
      • Browser Synthetics Test Types
      • Browser Synthetics Disambiguation
      • Test Settings for Page Load and Transaction Tests
      • Navigating Waterfall Charts for Page Load and Transaction Tests
      • Using Round Robin Test Scheduling
      • What Information Is Transmitted in a Page Load or Transaction Test?
      • Transaction Test SSO Support
        • Implementing SSO in Transaction Scripts
        • Caveats for NTLM/Kerberos Authentication
        • TOTP Examples for SSO
      • Page Load Tests
        • When to Use a Page Load Test
        • Creating a Page Load Test
        • Using the Page Load View
        • How to Generate a HAR File
        • Migrating to Single Interval for Page Load Tests
        • Creating a Page Load Test that Uses SSO
      • Transaction Tests
        • Getting Started With Transaction Tests
          • When to Use a Transaction Test
          • Transaction Tests Compared With Other Test Types
          • ThousandEyes Recorder
          • ThousandEyes Recorder Permissions
          • Working With Web Development Tools
          • Working With Secure Credentials
          • Transaction Test Table Tab View
          • Transaction Metrics on Alerts and Dashboards
          • Screenshots in Transaction Test Views
        • Transaction Test Development Guide
          • Creating Robust Transaction Scripts
            • Optimizing and Troubleshooting Transaction Scripts
            • Transaction Scripting Tips and Tricks
          • Transactions – Executing Custom JavaScript Code
        • Use Cases | Code Examples
          • Uploading or Downloading Files in a Script
            • Transaction Scripting Examples for File Downloads
          • Include API Calls in a Transaction Test
            • Using the node-fetch module
            • Using the net module
            • Using the tls module
        • Transaction Scripting Reference
      • Dual Chromium Option
        • Why Are Regular Chromium Upgrades Needed?
        • Configuring Dual Chromium
        • Working With Dual Chromium
        • Chromium Update History
        • Chromium Upgrade Known Issues
    • Endpoint Experience
      • Test Settings
        • Monitoring an Application using Synthetic Tests
        • Configuration Options for Synthetic Tests
        • Managing Synthetic Tests
        • Real User Tests
      • Viewing Data
        • Endpoint Agent Scheduled Tests View
        • Endpoint Agent Real User Tests View
        • Endpoint Agent Local Networks View
        • Endpoint Agent Dynamic Tests View
        • Endpoint Agent Views
        • Endpoint Views Reference
      • Troubleshooting
        • Step-by-Step Guide to Troubleshooting Endpoint Agent Problems
        • Troubleshooting Endpoint Agent Issues
    • Connected Devices
      • Connected Devices Tests
        • Routing
          • Traceroute
        • Network
          • Speed Tests
          • Latency, Loss, Disconnections, and Jitter Tests
          • Responsiveness (Latency under Load) Tests
        • DNS
          • DNS Resolution Tests
        • Web
          • Web Browsing Lite Tests
          • Generic Streaming (HLS/DASH) Tests
        • Voice
        • Dynamic Application Test Suites
          • Gameplay Test Suite
          • Video Conferencing Test Suite
          • Social Media Test Suite
          • Game Store Test Suite
          • Video Streaming Test Suite
            • Netflix Streaming Tests
            • YouTube Streaming Tests
            • BBC iPlayer Streaming Tests
          • Content Delivery Network (CDN) Test Suite
        • Local Network Information
          • Data Usage
      • Test Management
        • Test Triggers
          • Scheduled Tests
          • Instant Tests
        • Testing Thresholds
        • Test Targets
          • Test Server Methodology
        • Automatic Test Configuration Retrieval
      • Device Agents
        • Router Agents
          • Router Agent Device Support
        • Installing Device Agent with Docker
        • Connected Devices Agent Release Versions
      • Usage Guides
        • Viewing Charts
        • Configuring Charts
        • Using Maps
        • Exporting Data
        • Importing Metadata
        • Managing Metadata
        • Creating Reports
        • Viewing Agents
        • Using Test Schedules
        • Accessing Your APIs
        • Using ConstantCare
      • Cisco Real Speed
    • Cloud Insights
      • Integrations
      • Views
      • Settings
    • Traffic Insights
      • Traffic Insights System Requirements
      • Traffic Insights Configuration Guide
      • Traffic Insights Views and Settings
      • Traffic Insights FPS Monitoring
    • WAN Insights
      • WAN Insights Quick Start
        • How to Activate ThousandEyes WAN Insights
        • WAN Insights Introductory Tour, Part 1
        • WAN Insights Introductory Tour, Part 2
        • WAN Insights Introductory Tour, Part 3
      • Introducing WAN Insights
        • What Is WAN Insights?
        • WAN Insights Value-Add
        • Why Use WAN Insights?
        • Using WAN Insights Together With ThousandEyes Network Assurance
        • Using WAN Insights Together with vAnalytics and vManage
        • WAN Insights Key Components
        • Enabling WAN Insights
        • Getting Support for WAN Insights
      • WAN Insights Terminology and Reference
      • WAN Insights Technical Overview
        • Application Categories
        • Sites, Routers, Paths, and Interfaces
        • Application Traffic Types
        • Estimating User Counts
        • Estimating Throughput
        • Capacity Planning
        • Understanding Quality
        • Life of a Recommendation
        • Understanding Recommendations
        • WAN Insights and ThousandEyes Alerts
      • WAN Insights User Interface
        • Logging In for the First Time
        • WAN Insights Screens and Workflows
        • Recommendations Screen
        • Recommendation Cards, Explained
        • Recommendation Details Modal
        • Endpoint-Pair Quality Comparison
        • Site Details Screen
        • Capacity Planning Screen
        • Capacity Detail Modal
        • Enter or Upload Bandwidth Data
      • Common Tasks
        • Adding Business-Critical Applications to WAN Insights
        • Email Notifications
        • Adding and Managing WAN Insights Users
        • Applying WAN Insights Recommendations
    • Internet Insights
      • Internet Insights Terminology
      • Limited Outage Map
      • Internet Insights Screens
        • Overview Screen
        • Internet Insights Service Views Screen
        • Application Outages
        • Network Outages
        • Catalog Settings Screen
      • Saving and Sharing from Internet Insights
      • Configuring Internet Insights
      • Provider Labels
      • Using Alerts and Dashboards With Internet Insights
        • My Affected Tests
        • Setting Up Alert Rules for Internet Insights
        • Using the Internet Insights Built-In Dashboard
    • Event Detection
    • Alerts
      • Creating and Editing Alert Rules
        • Global and Location Alert Conditions
        • Alert Rule Severity
        • Adaptive Alert Detection
        • Dynamic Baselines
        • Transport Layer Security (TLS) Alerts
        • Alert Rules for Devices
        • Alert Metrics Reference
      • Default Alert Rules
      • Viewing Alerts
      • Alert Clearing
        • Alert Suppression Windows
      • Alert Notifications
      • Standard Notification Methods
        • Alert Notifications via Email
        • Alert Notifications via SMS
        • Classic Webhooks for Alert Notifications
    • Dashboards
      • Using the Dashboard
      • Customizing Your Dashboard
      • Using the Dashboard Templates
      • Dashboard Widgets
      • Embedding Dashboard Widgets in External Web Sites
      • Excluding Periods of Data From a Dashboard
      • Dashboard Sharing and Snapshots
      • Dashboard Labels
      • Troubleshooting with Dashboard Drill Down
      • Tailoring Dashboards with Dashboard Filters
    • Device Layer
      • Discovering Device-Layer Devices
      • Device Discovery Results
      • Using the Device Layer View
    • Account Management
      • User Registration
        • SAML JIT Provisioning
        • ThousandEyes Support for SCIM
          • How to Configure SCIM with Azure Active Directory
          • How to Configure SCIM with Okta
      • Authorization
        • Role-Based Access Control
          • Role-Based Access, Explained
          • Built-In Roles and Permissions
        • Account Groups
          • What is an Account Group?
          • Working with Account Settings
          • Users in Multiple Organizations
          • Changing Ownership of a Test
          • Working with Time Zone Settings
        • OAuth 2.0 with ThousandEyes
          • Integrations with OAuth 2.0
        • Adding a Profile Image with Gravatar
      • Authentication
        • Logging In
        • How to Configure Single Sign-On
      • User Activity
        • Working with the Activity Log
        • ThousandEyes User Session Timeouts and Terminations
        • How Long is my Data Accessible via ThousandEyes?
        • Retaining Data Beyond the 90-Day Limit
        • Multi-Region Cloud Support
      • Usage-Based Billing
        • About Our Consumption Model
          • Device Agent Consumption Model
        • About Units
        • Test Type Layers and Units
        • Setting Quotas
        • Calculating Units
        • FAQs: Usage
      • Customer Security and Privacy Responsibilities
    • Integrations
      • Custom Webhooks
        • Using OAuth 2.0 Authentication for Your Custom Webhook
        • Webhook Variables
      • Custom Webhook Examples
        • Microsoft Teams for Alert Notifications
        • Cisco Webex for Alert Notifications
        • Google Chat for Alert Notifications
        • Event-Driven Ansible for Alert Notifications
        • Splunk Alert Notification
      • Custom-Built Integrations
        • PagerDuty for Alert Notifications
        • ServiceNow for Alert Notifications
          • Incident Management
        • Slack for Alert Notifications
        • AppDynamics for Alert Notifications
        • AppDynamics for Test Recommendations
        • AWS for Test Recommendations
        • AWS for Cloud Insights
          • AWS for Cloud Insights Using CLI
        • Meraki for Data Enrichment
        • Webex Control Hub Integration
        • Microsoft Teams Integration
        • ThousandEyes for OpenTelemetry
          • Configuring ThousandEyes for OpenTelemetry
            • Configuring ThousandEyes for OpenTelemetry Using the API
            • Configuring ThousandEyes for OpenTelemetry Using the UI
          • Configuring ThousandEyes for Splunk Cloud or Enterprise
            • Configuring ThousandEyes for Splunk Cloud or Enterprise using the API
            • Configuring ThousandEyes for Splunk Cloud or Enterprise using the UI
          • ThousandEyes for OpenTelemetry Data Model
            • ThousandEyes for OpenTelemetry Data Model v1
              • OpenTelemetry Collector Data v1 Example
            • ThousandEyes for OpenTelemetry Data Model v2
              • ThousandEyes for OpenTelemetry Data Model v2 - Metrics
                • OpenTelemetry Collector Data v2 Metrics Example
                • ThousandEyes for OpenTelemetry Data Model Metrics - Migration from v1 to v2
              • ThousandEyes for OpenTelemetry Data Model v2 - Traces
                • OpenTelemetry Collector Data v2 Traces Example
          • OpenTelemetry Collector Configuration
          • Automatic Disabling of Failing Streaming Integrations
        • Cisco ThousandEyes App for Splunk
          • Configuration
          • Inputs
          • Dashboards
          • Troubleshooting
    • Best-Practices Guides
      • Choosing the Right Test Protocol for Network & App Synthetics Tests
      • Optimizing SYN vs SACK Probing Methods to Avoid Unexplainable Packet Loss
      • Using Dashboards to Tell a Story
      • Best Practices for Implementing Account Groups
      • Monitoring Microsoft 365
      • Monitoring Microsoft Teams
      • Monitoring Salesforce
      • Monitoring Slack
      • Monitoring Webex Meetings with Endpoint Agents
      • Monitoring Webex Calling
      • Monitoring Webex Meetings with Cloud and Enterprise Agents
      • Monitoring Zoom
    • API
      • Create/Update/Delete Tests Using the ThousandEyes API
      • Obtaining a List of ThousandEyes Agent IP Addresses
      • Writing JSON to API Produces HTTP 406 Response Code
    • Privacy-Related
      • Authorized Subprocessors for ThousandEyes Network Intelligence Platform
    • Archived Documentation
      • Archived - Displaying and Alerting for Unit Consumption
      • Archived - Dependency Tree for ThousandEyes Enterprise Agent Software
      • Archived - Getting Started with ThousandEyes
      • Archived - Sending ThousandEyes Alerts to AppDynamics
      • Archived - ThousandEyes Infrastructure Changes
      • Archived - Using the Transactions (Classic) View
      • Archived - Transaction Test Migration Workflow
      • Archived - Instructions for Mitigating Meltdown and Spectre on Enterprise Agents
      • Archived - Bash (ShellShock) Security Notice
      • Archived - Endpoint Installation using Customized Installers
      • Archived - Configuring Endpoint Agent Setup
      • Archived - Creating Scheduled Tests on Endpoint Agents
      • Archived - Managing the Endpoint Agent
      • Archived - Enterprise Agent Installation on Juniper NFX Routers
      • Archived - Installing and Removing ThousandEyes X Virtual Framebuffer on Enterprise Agents
      • Archived - Permitted Content Types for Page Load Tests
  • Archived Release Notes
    • 2024
      • Release Notes: January 2024
      • Release Notes: February 2024
      • Release Notes: March 2024
      • Release Notes: April 2024
      • Release Notes: May 2024
      • Release Notes: June 2024
      • Release Notes: July 2024
      • Release Notes: August 2024
    • 2023
      • Release Notes: January 2023
      • Release Notes: February 2023
      • Release Notes: March 2023
      • Release Notes: April 2023
      • Release Notes: May 2023
      • Release Notes: June 2023
      • Release Notes: July 2023
      • Release Notes: August 2023
      • Release Notes: September 2023
      • Release Notes: October 2023
      • Release Notes: November 2023
      • Release Notes: December 2023
    • 2022
      • Release Notes: January 2022
      • Release Notes: February 2022
      • Release Notes: March 2022
      • Release Notes: April 2022
      • Release Notes: May 2022
      • Release Notes: June 2022
      • Release Notes: July 2022
      • Release Notes: August 2022
      • Release Notes: September 2022
      • Release Notes: October 2022
      • Release Notes: November 2022
      • Release Notes: December 2022
    • 2021
      • Release Notes: January 2021
      • Release Notes: February 2021
      • Release Notes: March 2021
      • Release Notes: April 2021
      • Release Notes: May 2021
      • Release Notes: June 2021
      • Release Notes: July 2021
      • Release Notes: August 2021
      • Release Notes: September 2021
      • Release Notes: October 2021
      • Release Notes: November 2021
      • Release Notes: December 2021
    • 2020
      • Release Notes: January 2020
      • Release Notes: February 2020
      • Release Notes: March 2020
      • Release Notes: April 2020
      • Release Notes: May 2020
      • Release Notes: June 2020
      • Release Notes: July 2020
      • Release Notes: August 2020
      • Release Notes: September 2020
      • Release Notes: October 2020
      • Release Notes: November 2020
      • Release Notes: December 2020
    • 2019
      • Release Notes: 2019-01-08
      • Release Notes: 2019-02-06
      • Release Notes: 2019-02-20
      • Release Notes: 2019-03-06
      • Release Notes: 2019-03-19
      • Release Notes: 2019-04-02
      • Release Notes: 2019-04-30
      • Release Notes: 2019-05-14
      • Release Notes: 2019-05-30
      • Release Notes: 2019-06-11
      • Release Notes: 2019-07-23
      • Release Notes: 2019-08-06
      • Release Notes: 2019-08-20
      • Release Notes: 2019-09-03
      • Release Notes: 2019-09-17
      • Release Notes: 2019-10-03
      • Release Notes: 2019-10-15
      • Release Notes: 2019-10-29
      • Release Notes: 2019-11-12
      • Release Notes: 2019-11-26
      • Release Notes: 2019-12-10
    • 2018
      • Release Notes: 2018-01-10
      • Release Notes: 2018-01-17
      • Release Notes: 2018-01-31
      • Release Notes: 2018-02-14
      • Release Notes: 2018-03-07
      • Release Notes: 2018-03-14
      • Release Notes: 2018-03-28
      • Release Notes: 2018-04-11
      • Release Notes: 2018-04-25
      • Release Notes: 2018-05-09
      • Release Notes: 2018-05-23
      • Release Notes: 2018-06-06
      • Release Notes: 2018-06-20
      • Release Notes: 2018-07-03
      • Release Notes: 2018-07-18
      • Release Notes: 2018-08-01
      • Release Notes: 2018-08-15
      • Release Notes: 2018-08-29
      • Release Notes: 2018-09-12
      • Release Notes: 2018-09-26
      • Release Notes: 2018-10-10
      • Release Notes: 2018-10-23
      • Release Notes: 2018-11-13
      • Release Notes: 2018-11-27
      • Release Notes: 2018-12-18
    • 2017
      • Release Notes: 2017-01-04
      • Release Notes: 2017-01-18
      • Release Notes: 2017-02-01
      • Release Notes: 2017-02-16
      • Release Notes: 2017-03-02
      • Release Notes: 2017-03-15
      • Release Notes: 2017-03-29
      • Release Notes: 2017-04-12
      • Release Notes: 2017-04-26
      • Release Notes: 2017-05-10
      • Release Notes: 2017-05-24
      • Release Notes: 2017-06-06
      • Release Notes: 2017-06-21
      • Release Notes: 2017-07-07
      • Release Notes: 2017-07-19
      • Release Notes: 2017-08-02
      • Release Notes: 2017-08-16
      • Release Notes: 2017-08-30
      • Release Notes: 2017-09-13
      • Release Notes: 2017-09-27
      • Release Notes: 2017-10-12
      • Release Notes: 2017-10-25
      • Release Notes: 2017-11-08
      • Release Notes: 2017-11-29
      • Release Notes: 2017-12-13
    • 2016
      • Release Notes: 2016-01-06
      • Release Notes: 2016-01-20
      • Release Notes: 2016-02-03
      • Release Notes: 2016-02-17
      • Release Notes: 2016-03-02
      • Release Notes: 2016-03-16
      • Release Notes: 2016-03-30
      • Release Notes: 2016-04-13
      • Release Notes: 2016-04-27
      • Release Notes: 2016-05-11
      • Release Notes: 2016-05-25
      • Release Notes: 2016-06-08
      • Release Notes: 2016-06-22
      • Release Notes: 2016-07-06
      • Release Notes: 2016-07-20
      • Release Notes: 2016-08-03
      • Release Notes: 2016-08-17
      • Release Notes: 2016-08-31
      • Release Notes: 2016-09-14
      • Release Notes: 2016-09-28
      • Release Notes: 2016-10-12
      • Release Notes: 2016-10-26
      • Release Notes: 2016-11-09
      • Release Notes: 2016-11-23
      • Release Notes: 2016-12-07
      • Release Notes: 2016-12-21
    • 2015
      • Release Notes: 2015-01-07
      • Release Notes: 2015-01-21
      • Release Notes: 2015-02-04
      • Release Notes: 2015-02-18
      • Release Notes: 2015-03-04
      • Release Notes: 2015-04-01
      • Release Notes: 2015-04-15
      • Release Notes: 2015-04-29
      • Release Notes: 2015-05-13
      • Release Notes: 2015-05-27
      • Release Notes: 2015-06-10
      • Release Notes: 2015-06-24
      • Release Notes: 2015-07-08
      • Release Notes: 2015-07-22
      • Release Notes: 2015-08-05
      • Release Notes: 2015-08-19
      • Release Notes: 2015-09-16
      • Release Notes: 2015-09-30
      • Release Notes: 2015-10-14
      • Release Notes: 2015-10-28
      • Release Notes: 2015-11-11
      • Release Notes: 2015-12-02
      • Release Notes: 2015-12-16
    • 2014
      • Release Notes: 2014-01-09
      • Release Notes: 2014-01-22
      • Release Notes: 2014-02-05
      • Release Notes: 2014-03-05
      • Release Notes: 2014-03-19
      • Release Notes: 2014-04-09
      • Release Notes: 2014-04-30
      • Release Notes: 2014-06-04
      • Release Notes: 2014-06-11
      • Release Notes: 2014-06-26
      • Release Notes: 2014-07-09
      • Release Notes: 2014-07-23
      • Release Notes: 2014-08-20
      • Release Notes: 2014-09-04
      • Release Notes: 2014-09-17
      • Release Notes: 2014-10-01
      • Release Notes: 2014-10-15
      • Release Notes: 2014-10-29
      • Release Notes: 2014-11-12
    • 2013
      • Release Notes: 2013-01-08
      • Release Notes: 2013-02-27
      • Release Notes: 2013-03-20
      • Release Notes: 2013-04-02
      • Release Notes: 2013-04-17
      • Release Notes: 2013-05-01
      • Release Notes: 2013-05-21
      • Release Notes: 2013-06-11
      • Release Notes: 2013-06-18
      • Release Notes: 2013-07-10
      • Release Notes: 2013-07-24
      • Release Notes: 2013-08-07
      • Release Notes: 2013-09-05
      • Release Notes: 2013-09-18
      • Release Notes: 2013-10-02
      • Release Notes: 2013-10-30
      • Release Notes: 2013-11-13
      • Release Notes: 2013-11-27
    • 2012
      • Release Notes: 2012-03-28
      • Release Notes: 2012-04-11
      • Release Notes: 2012-04-24
      • Release Notes: 2012-05-22
      • Release Notes: 2012-06-05
      • Release Notes: 2012-06-20
      • Release Notes: 2012-08-01
      • Release Notes: 2012-08-28
On this page
  • Audience Prerequisites
  • Slack Architecture
  • WebSocket Traffic
  • Edge API (Non-WebSocket) Traffic
  • CDN
  • Slack Huddle
  • Monitoring Slack with Cloud and Enterprise Agents
  • Agent Placement and Selection
  • Slack Domains to Monitor
  • Slack Monitoring Template
  • Slack Application-Layer Monitoring Template
  • Using the Slack Template
  • Slack Health Overview Dashboard
  • Monitoring Slack with Endpoint Agents
  • Scheduled Tests
  • Real-User Tests
  • Internet Insights
  1. Product Documentation
  2. Best-Practices Guides

Monitoring Slack

PreviousMonitoring SalesforceNextMonitoring Webex Meetings with Endpoint Agents

Last updated 2 months ago

Due to recent platform-wide naming, navigation, and URL changes in the product, you may notice some discrepancies between the product and the screenshots displayed in our technical documentation. The instructions and actual pages in the product are still valid and haven’t changed. Please bear with us as we update our screenshots to better match the in-product experience. See the full scope of changes on .

Slack is a platform for teams to communicate in real time. If your organization uses Slack, you most likely rely on it for collaboration and productivity. If it’s a critical tool for your organization, you’ll want to monitor its availability and performance for your workforce.

This article describes monitoring for a third-party application, and might not apply to all use cases. Because the third-party company updates their application separately from ThousandEyes, the information outlined here might not represent the application's latest architecture. ThousandEyes will provide best-effort support for these solutions.

This guide walks you through how to monitor your workforce’s Slack digital experience. To accomplish this, you'll use multiple features within ThousandEyes, including:

  • ThousandEyes Cloud and Enterprise Agents

  • ThousandEyes Endpoint Agents

  • ThousandEyes Internet Insights

This best-practices guide is intended for readers who already have some proficiency in ThousandEyes and are ready to delve into more advanced guidance. It assumes a basic understanding of networking concepts and how Slack is used for collaboration, as well as familiarity with the ThousandEyes platform.

If you are new to ThousandEyes, we recommend starting with the to establish a solid foundation. If you are unsure, see the section below for more details about the assumed knowledge in this article.

Audience Prerequisites

To effectively follow this guide, you should be:

  • Familiar with the , as well as the and .

  • Familiar with ThousandEyes’ settings to ensure your user account has the necessary permissions.

  • Able to deploy Enterprise Agents and/or Endpoint Agents if they’re not already deployed.

  • Aware of your organization’s available licenses for Endpoint Agents and Internet Insights, and available units for Cloud and Enterprise Agents. For information on your organization’s usage and capacity, see the articles in the section.

  • Comfortable with networking concepts, such as:

    • TCP/IP, HTTP, DNS, and how they relate to the ThousandEyes platform.

    • Content Delivery Networks (CDNs).

    • The difference between DNS resolvers (recursive DNS servers) and authoritative DNS nameservers. Learn more in the .

    • Basic knowledge of APIs and their uses.

  • Proficient in Slack concepts and connectivity principles.

Slack Architecture

The Slack architecture includes a client-side app and server-side infrastructure. The Slack client is software installed on clients’ computers or devices to connect to the Slack servers through the edge network.

When a user launches the Slack client, it will make many DNS requests in the background to resolve slack.com, wss-primary.slack.com, slack-edge.com, and any other domains that are being used for Slack. If the DNS request is not resolved from the local cache, it will be resolved through the configured DNS recursive resolver, and ultimately answered by the authoritative name server. All this is done even before the client finishes loading the Slack client and its associated services.

WebSocket Traffic

Slack uses WebSocket connections for sending and receiving messages. These WebSocket connections are ingested into a system called envoy-wss (WebSocket Service) and are accessible from the internet using the wss-primary.slack.com and wss-backup.slack.com DNS domains. NS1 will point the request to the NLB(s) in the region closest to the customer (based on the client subnet information). The NLB will forward the requests to the servers handling Slack WebSocket traffic, which complete the SSL/TLS handshake and then maintain WebSocket connections at Slack to enable real-time messaging.

Edge API (Non-WebSocket) Traffic

All non-WebSocket traffic — for example, Slack API, slackbot, webhooks, and third-party apps — flows through the edge API stack, or envoy-edge. These are the set of Envoy servers dedicated to API traffic.

Traffic is ingested into this stack via various DNS domains; for example, app.slack.com (API traffic destined for the webapp), edgeapi.slack.com (Slack’s user and channel information), files.slack.com (file upload and download), and slack-imgs.com (Slack image unfurling). Based on the domains that the requests came from, Route53 or NS1 will point the request to the NLBs in a region closest to the user, in terms of latency.

CDN

Slack Huddle

Slack Huddles are lightweight audio calls that let you and members of your team talk and share their desktop screen with each other in real time. When users join the huddle, https://yourworkspace.slack.com/api/rooms.join is called. The Huddle connection request requires a session token which passed as a cookie. The requirement of this token limits the ability to monitor the Huddle performance.

Monitoring Slack with Cloud and Enterprise Agents

You can monitor Slack services from within your own secure networks using ThousandEyes Enterprise Agents, and from outside of your own networks using ThousandEyes Cloud Agents. This section includes

Agent Placement and Selection

Enterprise Agents

Enterprise Agents are used to monitor DNS resolution (either internal resolvers or public resolvers), and to monitor Slack application performance. Use ThousandEyes Enterprise Agents to proactively monitor your Slack user experience from vantage points within your enterprise WAN. This is known as “inside-out” testing.

In the default template configuration, you will select Enterprise Agents that will run the tests to monitor Slack.

  • At a minimum, place an Enterprise Agent at each internet egress point.

  • For hub-and-spoke network architectures with centralized egress, the recommended best practice is to also test from Enterprise Agents at each “spoke” user location. Spokes are typically branch offices.

Cloud Agents

Use ThousandEyes Cloud Agents to establish a baseline for web application performance outside of the enterprise network – the “outside-in” view.

It is recommended that you select at least one Cloud Agent for each region where you have internet access and an Enterprise Agent. Additionally, Cloud Agents can be added based on where you have a concentration of users connecting to Slack. These Cloud Agents provide an external baseline.

Slack Domains to Monitor

  • [tenant name].enterprise.slack.com

  • wss-primary.slack.com or wss-backup.slack.com (for WebSocket connections)

  • a.slack-edge.com or b.slack-edge.com (Slack’s CDN CloudFront)

  • app.slack.com (API traffic that is destined for the Slack web application)

  • edgeapi.slack.com (Slack’s user and channel information)

  • files.slack.com (for file upload and download)

  • slack-imgs.com (Slack image unfurling)

  • slack.com/api/api.test (for testing calls to the Slack API)

Slack Monitoring Template

ThousandEyes provides a template specifically designed for monitoring Slack. It includes Cloud and Enterprise Agent tests for comprehensive monitoring of critical Slack services. This template includes five HTTP server tests and one DNS server test. The sections below outline each of these tests, as well as optional additional tests that can be configured.

Monitoring Your Slack Instance

These two tests require your Slack workspace URL. Every Slack Enterprise instance uses a Slack workspace URL, a unique public web address that allows access from the internet and enables communication and collaboration among team members. Monitoring your workspace URL from your member’s workplace is critical to ensuring their user experiences. To find your Slack Workspace URL, navigate to your profile settings in Slack and locate the ‘Workspace URL’ section.

Configuration Option
Description

Test Layer

Web

Test Type

HTTP server

Default Test Name

template name - tenant name

Test Description

Monitor the Slack enterprise application

Test Target (URL)

https://[tenant name].enterprise.slack.com

Interval

1, 2, or 5 minutes

Agents

Enterprise Agents. Cloud Agents for baseline

Advanced Settings

Target Timeout field: Set to 5s

HTTP server tests run from both ThousandEyes Enterprise Agents and Cloud Agents. HTTP server tests are used to monitor the performance, reachability, and availability of your Slack Enterprise instance. When an HTTP server test detects an issue, the results pinpoint the phase of a request in which the issue occurred, helping to decrease your mean time to repair. To assist the analysis, information from lower layers is included in this test type - agent-to-server, network, and BGP routing data is readily available when looking for the root cause.

Configuration Option
Description

Test Layer

DNS

Test Type

DNS server

Default Test Name

template name - tenant name - DNS

Test Description

Monitor the DNS resolution for Slack

Test Target (domain)

[tenant name].enterprise.slack.com

DNS Servers

[Customer’s DNS Resolvers]

DNS Class

IN

DNS Record Type

A

Interval

1, 2, or 5 minutes

Agents

[Enterprise Agents]

Advanced Settings

Send recursive queries field: Set to true

DNS server tests run from ThousandEyes Enterprise Agents (“internal”). These tests monitor network connectivity to your DNS recursive resolvers (public or internal) and DNS resolution performance. Monitoring DNS in addition to HTTP for application availability and performance is crucial because DNS is critical for translating domain names to IP addresses. Any issues or delays in DNS resolution can significantly impact the accessibility and performance of a web application, even if the HTTP service itself is functioning properly.

Monitoring the WebSocket Connection to Slack

As the Slack Architecture section states, Slack uses a WebSocket connection for sending and receiving the message, which is ingested to the WebSocket service using the domain names wss-primary.slack.com and wss-backup.slack.com. An HTTP test monitoring these targets from ThousandEyes Enterprise Agents (“internal”) will ensure Slack messaging is delivered smoothly.

Configuration Option
Description

Test Layer

Web

Test Type

HTTP server

Default Test Name

template name - tenant name - WebSocket

Test Description

Monitor the Slack enterprise application

Test Target (URL)

https://wss-primary.slack.com port:443

Interval

1, 2, or 5 minutes

Agents

Enterprise Agents. Cloud Agents for baseline

Advanced Settings

Verify Content field: Set to worked

As shown in the following image, the successful server response from this target includes “worked” text; thus we use it in the HTTP option “Verify Content” to add the extra validation. In case this response isn’t received, the HTTP server test will fail with the error.

Testing the backup WebSocket is optional and is not included in the template.

Configuration Option
Description

Test Layer

Web

Test Type

HTTP server (optional)

Test Name

template name - tenant name - Backup WebSocket

Test Description

Monitor the Slack enterprise application

Test Target (URL)

hhttps://wss-backup.slack.com

Interval

1, 2, or 5 minutes

Agents

Enterprise Agents. Cloud Agents for baseline

Advanced Settings

Verify Content field: Set to worked

Monitoring Non-WebSocket Connections to Slack

As the Slack Architecture section states, other traffic to the Slack web app is served by the Edge API non-WebSocket connection. This API Traffic is ingested into the Edge API stack via various DNS domains, depending on the services the client accesses. In the template, we recommend the two primary domains app.slack.com and edgeapi.slack.com as the HTTP server test targets. Other common Slack domains, such as files.slack.com and slack-imgs.com, are listed as the optional test target.

Configuration Option
Description

Test Layer

Web

Test Type

HTTP server

Default Test Name

template name - tenant name - WebApp

Test Description

API traffic destined for the slack web application

Test Target (URL)

https://app.slack.com

Interval

1, 2, or 5 minutes

Agents

Enterprise Agents. Cloud Agents for baseline

| Test Layer | Web | | Test Type | HTTP server | | Default Test Name | template name - tenant name - User Info | | Test Description | Slack’s user and channel information | | Test Target (URL) | https://edgeapi.slack.com | | Interval | 1, 2, or 5 minutes | | Agents | Enterprise Agents. Cloud Agents for baseline |

The following tests are optional and not included in this template. Depending on your Slack use case, we suggest monitoring them separately.

Configuration Option
Description

Test Layer

Web

Test Type

HTTP server (optional)

Default Test Name

template name - tenant name - Slack File Up/Download

Test Description

File upload and download

Test Target (URL)

https://files.slack.com

Interval

1, 2, or 5 minutes

Agents

Enterprise Agents. Cloud Agents for baseline

Configuration Option
Description

Test Layer

Web

Test Type

HTTP server (optional)

Default Test Name

template name - tenant name - Slack Images

Test Description

Slack image unfurling

Test Target (URL)

https://slack-imgs.com

Interval

1, 2, or 5 minutes

Agents

Enterprise Agents. Cloud Agents for baseline

Monitoring the CDN/CloudFront

CDN performance tests conducted using ThousandEyes Cloud Agents provide deep insights into CDN content delivery, including geographic CDN load balancing, latency, and availability. ThousandEyes monitors the performance of your application, origin, and CDN edge node, so you can quickly pinpoint and diagnose issues that impact a user’s digital experience. You can gain insight into how CDNs will affect application delivery in real-time and perform CDN comparisons across regions and over time with page load, transaction, and HTTP tests that include rich network measurements, Layer 3 path visualization, and BGP route visualizations.

Configuration Option
Description

Test Layer

Web

Test Type

HTTP server

Default Test Name

template name - tenant name - CDN

Test Description

Slack CDN CloudFront

Test Target (URL)

https://a.slack-edge.com

Interval

1, 2, or 5 minutes

Agents

Enterprise Agents. Cloud Agents for baseline

Advanced Settings

Desired status code field: Set to 404. verifyCertificate: set to false

The cached static data in the CDN can be found by the specific path after the domain. Because of this, the HTTP server test to the main domain is expected to receive a 404 error as there is no content. Thus, this test specifies the Desired status code as 404.

Slack Application-Layer Monitoring Template

If you deploy this template, you do not need to deploy the Slack Monitoring Template.

This template is suitable for monitoring the Slack Application layer, including HTTP server tests from the Slack Monitoring Template, as well as one Page Load test and one API test.

Monitoring Your Slack Instance

This test requires your Slack workspace URL. Every Slack Enterprise instance uses a Slack workspace URL, a unique public web address that allows access from the internet and enables communication and collaboration among team members. Monitoring your workspace URL from your member’s workplace is critical to ensuring their user experiences. To find your Slack Workspace URL, navigate to your profile settings in Slack and locate the ‘Workspace URL’ section.

Configuration Option
Description

Test Layer

Web

Test Type

Page load

Default Test Name

template name - tenant name - Application

Test Description

Monitor the Slack workspace URL

Test Target (URL)

https://[tenant name].enterprise.slack.com

Interval

1, 2, or 5 minutes

Agents

Enterprise Agents. Cloud Agents for baseline

Advanced Settings

Target Timeout field: Set to 5s

Page load tests run from both ThousandEyes Enterprise Agents and Cloud Agents. They measures the performance of an individual web page. This test uses a Chromium-based browser running on a Cisco ThousandEyes Cloud or Enterprise Agent. In addition to showing total page load time, the test shows the load times for each of the Document Object Model (DOM) components on the page.

Monitoring the Slack API

Configuration Option
Description

Test Layer

Web

Test Type

API test

Default Test Name

template name - tenant name - API

Test Description

Slack API availability test

Network Test Target

https://slack.com/api/api.test

Step 1:

Slack API

Target API

GET https://slack.com/api/api.test

API Configuration

Authentication: None, Assertion Rules: Status Code: 200

Interval

1, 2, or 5 minutes

Agents

Enterprise Agents. Cloud Agents for baseline

API tests can reveal the application state and common application failure patterns of the critical web API endpoints within your application ecosystem, as seen from the vantage point of a ThousandEyes Cloud or Enterprise Agent. You can use the ‘Step Builder” to configure a single test that makes multiple API calls to different endpoints and passes results as variables from one call to the next. They support any HTTP endpoint for sending a request, receiving a response, and capturing the timing, as well as sending the pre-defined variables, and assertion. In this test, we use assertion rule “Status code: 200” so that any other HTTP responses status will trigger an error.

Configuration Option
Description

Test Layer

Web

Test Type

API test

Default Test Name

template name - tenant name - Conversation

Test Description

Slack conversation API (for example)

Network Test Target

https://slack.com/api/conversations.list

Step 1:

Slack Conversation API

Target API

GET https://slack.com/api/conversations.list

API Configuration

Authentication: bearer token (use UserToken)

Interval

1, 2, or 5 minutes

Agents

Enterprise Agents. Cloud Agents for baseline

Using the Slack Template

Now that we've discussed all the tests, agents, and targets in the ThousandEyes Slack template, we are ready to use this template to deploy our tests.

To begin deploying a template:

  1. Click the dropdown next to the Add New Test button.

  2. In the dropdown menu, select Add From Template.

    The Deploy Template panel opens.

  3. In the Search field, enter Slack.

    Alternatively, you can use the Collections filter and then select Slack.

    There are two Slack-related certified templates:

    • Slack

    • Slack Application Layer

    To choose which template you should use, consider your agent selection:

    • If you want to use any Enterprise Agents that use Browserbot, choose the Slack Application Layer monitoring template.

    • Otherwise, choose the Slack monitoring template.

  4. Select your template and proceed with configuring the tests.

For the template fields:

  • Enter your Slack Tenant Name (the example image uses "thousandeyes").

  • Select the Cloud and Enterprise Agents to use for the test.

  • Select a testing interval (ThousandEyes recommends either 1 or 2 minutes, and no greater than 5 minutes).

  • Provide a name for the test suite to easily identify tests using this template. This name is arbitrary, but note that:

    • The name will be used as the prefix for all test names, and longer ones will be harder to distinguish in dashboards/test views.

    • A label will be created with this name, and applied to all the tests in the template.

Note on Entering DNS Resolvers

By default, the template will automatically look up the authoritative DNS servers for the Slack tenant. As described above, the DNS server tests are intended to monitor your DNS resolvers, not the authoritative nameservers (DNS trace tests are used for that instead). 

To enter your DNS resolvers, first click the “x” at the right side of the DNS resolvers input field to clear the servers that were automatically identified. 

Next, place your cursor in the text input field and type the IP address or hostname of your DNS resolver, and press your enter key. Repeat for each of your DNS resolvers. 

  1. If there are any tests in the template that you want to disable before you deploy the template, use the Disable toggle next to the test name.

  2. Click Review to see what you are about to deploy.

    The dialog moves forward to Step 3 of 3 - Review template, a summary of the tests, dashboards, and labels included in the deployment.

  3. Review the summary.

  4. Click Deploy Now to deploy the monitoring template.

    The deployment process may take a few minutes to complete. When it has finished, the dialog shows a success message.

  5. In the success message, decide your next step:

  • To go to Network & App Synthetics > Test Settings, to show a filtered view of tests you have just deployed, click Go to Test Settings.

  • To go to the dashboard you just created through the template, click Go to Dashboards.

    It may take a few moments for the tests to run and to gather results.

The Go to Dashboards link opens the Slack Health Overview dashboard, covered in the next section. It will take a little while for the tests to run and gather results before the dashboard will display the metrics from the deployed tests.

Slack Health Overview Dashboard

This section describes the dashboard that is included in the Slack template. The dashboard is designed with the highest-level information shown at the top, with increasing service granularity in the widgets as you navigate down the page.   

The dashboard provides a service-oriented health overview for Slack. The widgets in this dashboard are primarily grouped by service, highlighting issues that affect one or more of the individual Slack services.

The first three rows of the service-oriented dashboard show Web Health and Network Health from the tests deployed by the Slack template. For website health, we show two widgets with 90th percentile measure and mean measure to give you an overall health status of Slack.

The middle section of the dashboard is intended to further break down the metrics and present the per-test, per-agent performance in multi graphs to show which services are experiencing the issues.

The bottom widgets of the service-oriented dashboard display each of your Slack tests, along with their current alert status, the most recent test measurements, and the trends of those measurements over the last 12 hours. You can click on any of the tests in this list to open the test view. The test widgets are filtered based on internal versus external tests to provide a quick visual of the service health and baseline.

Monitoring Slack with Endpoint Agents

Endpoint Agent tests are not included in the default dashboard, but can be easily added based on your requirements.

In addition to the Cloud and Enterprise Agent templates described above, you can use ThousandEyes Endpoint Agents for real-user monitoring of Slack, combined with scheduled synthetic testing for proactive monitoring. ThousandEyes recommends the scheduled test described below.

Scheduled Tests

Scheduled tests run from Endpoint Agents at regularly scheduled intervals without any user interaction and provide a great baseline for troubleshooting.

Test Layer

Web

Test Type

HTTP server

Default Test Name

tenant name - Slack Enterprise Application

Test Description

Monitor the Slack application

Test Target (URL)

https://[tenant_name].enterprise.slack.com

Protocol

Auto-detect

Agents

All agents, specific agents, or your preferred agent label

Interval

1, 2, or 5 minutes

Other Basic Configuration

Prioritize this test for the selected agents

Advanced Settings

Follow Redirects field: Set to Enable

Real-User Tests

Real-user tests run from Endpoint Agents are automatically deployed when the user visits a website in the monitored domain set. Real-user tests are not included in the Slack templates, and require manual configuration to set up.

Domains to include in the monitored domain set:

  • [tenant name].enterprise.slack.com

  • wss-primary.slack.com (for WebSocket connections)

  • a.slack-edge.com (Slack’s CDN CloudFront) or b.slack-edge.com

  • app.slack.com (API traffic that is destined for the Slack web application)

  • edgeapi.slack.com (Slack’s user and channel information)

  • slack.com

Internet Insights

Internet Insights is not included in the default dashboard, but can be easily added based on your requirements.

When a critical service is disrupted, it is common to wonder if you are the only one affected by the outage or if the issue is larger in scope or scale. Internet Insights collects data from a diverse set of vantage points across the globe to offer visibility into service providers, including AWS (Amazon Web Services) and Slack. Internet Insights is built upon ThousandEyes’ collective data set - billions of probes across the Internet to websites, apps, and API endpoints every day -- combined with outage detection to provide a macro-scale view into network and application outages. The intelligence derived from this data enables operations teams to quickly identify and resolve issues with providers using concrete Internet telemetry data.

ThousandEyes recommends selecting the following packages in your Internet Insights Catalog Settings configuration to enable you to understand if there is a larger outage causing a Slack service disruption. The UCAAS package directly aligns with the Zoom application services and will help isolate large outages with Slack. The Slack IAAS package will help you clearly isolate larger issues for the Slack data centers hosted in AWS. Lastly the ISP package will help show larger ISP outages that are causing Slack-related network access issues.

  • A SAAS package in each applicable region, which includes:

    • Amazon

  • A UCAAS package in each applicable region, which includes:

    • Slack

  • An IAAS package in each applicable region, which includes:

    • Amazon Web Services

The edge network consists of a set of globally distributed edge regions or AWS datacenters that are called edge . These edge PoPs sit closer to the users to reduce latency, improve performance, and connect them back to Slack’s main region located in . This is the region where storage and core services live, and Slack is heavily invested in using (AZ) resilience to overcome any issues on a given datacenter's AZ.

Slack uses (R53) as the authoritative name server for most domains. Additionally, all WebSocket records are to for WebSocket traffic. Both NS1 and Route 53 route requests to the region closest to the user. The DNS lookup response is a list of IP addresses for the region closest to the user. The client will then pick a random IP address from the list for Slack application connections. These IP addresses are public-facing (NLBs) which front both the WebSocket and non-WebSocket stacks and are configured to be used in passthrough mode (); they forward the network packets to either WebSocket or non-WebSocket load-balancing stacks () at the edge. The client then initiates a HTTPS connection with Slack servers, which upgrades the connection stream to a WebSocket connection.

At this point, the user is ready to send a message on Slack. Requests to Slack can be broadly classified into two categories: and non-WebSocket.

A (CDN) is a group of distributed servers that caches content near end users, providing improved performance and lower latency. Slack uses as its primary CDN. All the static assets that are critical for booting the Slack client are served through the a.slack-edge.com domain via CloudFront. Additionally, there is a backup CDN domain accessible via b.slack-edge.com.

.

.

How to use the monitoring templates for and the .

If you have not yet installed any Enterprise Agents, see the section of the Enterprise Agent documentation.

Make sure your environment meets the .

These browser synthetic tests require Enterprise Agents using Chromium. Chromium is included as part of the BrowserBot package. You can find more information in: .

For users leveraging Slack to create modular functions and build an automated workflow (see ), an API test is essential to validate the availability of the Slack API.

The following test is optional, and not included in this template. If you would like to monitor a specific Slack API endpoint, obtain a Bearer authentication token by creating a new app via , then configure the Bearer token in the Authentication tab.

Multiple permissions are required in order to view and deploy templates. For the complete list, see the .

Go to .

For more information about BrowserBot, see .

If dashboards or labels already exist from other templates you have deployed, you may see a warning.      

All of the widgets in these dashboards allow you to drill down into the individual tests for complete details. Click on the widget, in this example Latency, to open the drilldown dialog, then select the test or tests to view, and click Open in Views. See for more information.

  To learn more about modifying dashboards or adding additional data sources like Endpoint Agent metrics or Internet Insights, network or application outages, be sure to review the and the guides.

PoPs
AWS us-east-1
availability zone
Amazon Route53
sub delegated
NS1
network load balancers
Layer 4 load balancer
Layer 7
WebSocket
content delivery network
AWS CloudFront
Installing
network requirements for connection to Slack
What is BrowserBot?
https://api.slack.com
https://api.slack.com/apps
Template Prerequisites
Network & App Synthetics > Test Settings
What Is BrowserBot?
Troubleshooting with Dashboard Drill Down
Naming and Navigation Menu changes - Summary List
getting-started guides
three types of ThousandEyes agent
test types for Cloud and Enterprise Agents
for Endpoint Agents
role-based access control
Usage-Based Billing
ThousandEyes Learning Center
Audience Prerequisites
Where to locate your ThousandEyes agents
What to test from each vantage point
Slack
Slack Application
Getting Started with Dashboards
Customizing Your Dashboard
Diagram of launching the Slack client
Diagram of WebSocket traffic for sending and receiving messages
Successful server response from a target
Static contents served from Slack's CDN
The Add From Template option
Selecting either the Slack or Slack Application Layer template
Configure tests in Global Setting
Deployment completed
Service Health Overview widgets
Per-test performance widgets
Per-test performance widgets
Entering DNS servers
Drilldown to Slack tests