ConnectWatch / Connector guide
Dashboard Back to dashboard
Dashboard Marketplace Configure
SSH vs SFTP Storage comparison

Connector guide

Each connector defines how ConnectWatch probes a specific service. Every hour (or at your configured interval) the probe connects, uploads a test file, verifies the write, and records latency. This guide explains what each connector does, when to use it, and how to configure it.

SSH probe
Monitor Linux/Unix servers by connecting via SSH and writing a test file
Included in all plans Live
What it does — step by step
1
Opens a TCP connection to the server on port 22 and measures connect time
2
Authenticates using your private key or password
3
Opens an SFTP session and uploads a 20-byte test file to the configured path — measures upload time
4
Deletes the test file (no residue left on the server)
5
Records total latency, connect time, upload time. Opens an incident if any step fails.
AWS EC2 / Azure VM
Monitor your cloud VMs. Know immediately if SSH access is lost due to security group changes, reboots, or disk issues.
On-premise servers
Monitor bare metal or VMware servers in your data centre. Detect network outages, power failures, or OS crashes.
Database servers
Confirm that your DB server is reachable over SSH — useful as a baseline health check alongside your DB monitoring.
CI/CD build agents
Ensure your Jenkins or GitHub Actions self-hosted runners are always reachable and writable before builds start.
SSH connect time
Time to establish TCP + SSH handshake. High values indicate network congestion or server load.
Upload time
Time to write the test file via SFTP. High values can indicate disk I/O issues or filesystem problems.
Total latency
End-to-end time from connect to file deleted. Your primary health metric.
FieldDescriptionExample
hostrequiredServer IP address or hostname192.168.1.10 or ec2-54-12.compute.amazonaws.com
portoptionalSSH port (default 22)22
userrequiredSSH username — create a dedicated probe user with minimal permissionsprobeuser
keyrequired*SSH private key (PEM format). Either key or password required.-----BEGIN OPENSSH PRIVATE KEY-----
passwordrequired*SSH password (if not using key auth)••••••••
fs_pathoptionalPath to write the test file. Defaults to /tmp. Used by Filesystem probe too./tmp or /mnt/efs/probe
Best practice: Create a dedicated probeuser account with no shell access and write permission only to the probe path. This limits the blast radius if the key is ever compromised.
HTTPS probe
Monitor web services and APIs by sending HTTP requests and verifying responses
Included in all plans Live
What it does — step by step
1
Sends an HTTP GET request to your configured URL
2
Checks the HTTP response code — 2xx is success, anything else is a failure
3
Records response time and HTTP status code
4
Optionally POSTs a small test file to a /probe-upload endpoint if it exists
REST APIs
Monitor your public or internal APIs. Know if your API goes down before your customers report it.
Web applications
Monitor your customer-facing websites. Detect downtime, slow responses, or certificate expiry.
Health endpoints
Poll your /health or /status endpoints to verify the application is running correctly.
Internal services
Monitor internal microservices that aren't publicly accessible but need to be up for your product to function.
Response time
Total time from request sent to response received. Alert if above your SLA threshold.
HTTP status
The response status code. 200 = OK, 5xx = server error, 4xx = client/auth error.
Timeout
If no response within the timeout (default 5s), probe fails. Configurable per environment.
FieldDescriptionExample
urlrequiredFull URL to probe including protocolhttps://api.yourcompany.com/health
headersoptionalJSON object of HTTP headers (auth tokens, API keys){"Authorization": "Bearer token"}
timeoutoptionalRequest timeout in milliseconds (default 5000)5000
Tip: For authenticated endpoints, add your API key or Bearer token in the headers field. ConnectWatch encrypts these at rest — they're never stored in plain text.
Filesystem probe
Measure real filesystem write/read latency on NFS, EFS, Azure Files and local disks
Included in all plans Live
What it does — step by step
1
SSHes into the server where the filesystem is mounted
2
Runs dd if=/dev/zero of=/mnt/path/probe.tmp bs=1k count=4 oflag=dsync — the oflag=dsync flag forces a real network flush, bypassing the OS page cache
3
Reads the file back to measure read latency
4
Deletes the test file — no residue left on the filesystem
Why oflag=dsync matters: Without it, the OS caches the write in RAM and reports success immediately — hiding the real NFS/EFS network latency. With dsync, every write is flushed to the network storage before returning, giving you the true end-to-end latency your application experiences.
AWS EFS
EFS has burst credits — when exhausted, throughput drops from 100+ MB/s to 1-5 MB/s. The FS probe catches this degradation before your application slows down.
Azure Files
Azure Files has per-share IOPS limits. Monitor write latency to detect when you're hitting those limits during peak load.
On-premise NFS
NFS mounts can silently degrade due to network issues or NFS server load. The FS probe detects this before users experience slow uploads or saves.
Shared storage
For multi-server setups where all nodes share a filesystem — verify all nodes can write to shared storage independently.
FS write latency
Time to write 4KB and flush to network storage. The most important metric for NFS/EFS health.
FS read latency
Time to read the test file back. High read latency on NFS usually indicates network or NFS server issues.
Total latency
Write + read combined. Compare against your application's file I/O requirements.
Note: The filesystem probe uses SSH to run commands on the server — so it needs its own SSH credentials. These can be the same as your SSH probe or different, since the filesystem may be on a different server.
Full setup guide Server commands, permissions, SSH key setup, error reference & terms
AWS S3
Monitor S3 bucket availability and write/read performance directly via AWS API
$5/env/mo Live
What it does — step by step
1
PUTs a small test object to your S3 bucket using AWS Signature V4 authentication
2
GETs the object back to verify the write landed and measures download time
3
DELETEs the test object — no cost for storage, no residue
Media / file storage
If your app uploads user files to S3, monitor that the bucket is writable and latency is acceptable.
Backups
Verify your backup bucket is accessible before your backup job runs. Catch permission issues early.
Data lake
Monitor the S3 buckets that feed your data pipeline. Detect S3 throttling or outages before they affect analytics.
Static website hosting
For S3-hosted websites, verify the bucket is writable for deployments alongside your HTTPS probe for availability.
FieldDescriptionExample
bucketrequiredS3 bucket namemy-app-uploads
regionrequiredAWS region where the bucket is locatedus-east-1 or ap-south-1
access_key_idrequiredAWS access key ID — create a dedicated IAM user with s3:PutObject, s3:GetObject, s3:DeleteObject onlyAKIAIOSFODNN7EXAMPLE
secret_access_keyrequiredAWS secret access key (encrypted at rest)••••••••
prefixoptionalObject key prefix for test objectsconnectwatch-probe/
IAM policy: Create a dedicated IAM user with only these permissions on the specific bucket:
s3:PutObject, s3:GetObject, s3:DeleteObject on arn:aws:s3:::your-bucket/connectwatch-probe/*
Azure Blob Storage
Monitor Azure Blob containers for availability and write/read performance
$5/env/mo Live
What it does
1
Authenticates using Azure Shared Key from your storage account connection string
2
Uploads a BlockBlob test object to your container
3
Downloads it back to verify the write and measure read latency
4
Deletes the test blob
Document storage
Monitor blob containers used for document management, ensuring write availability and acceptable latency.
Media pipelines
Azure Blob is commonly used for video/media ingestion. Monitor that uploads will succeed before your pipeline runs.
FieldDescriptionExample
connection_stringrequiredAzure Storage account connection string (encrypted at rest)DefaultEndpointsProtocol=https;AccountName=...
containerrequiredBlob container nameprobe-container
SFTP
Monitor dedicated SFTP file transfer services used for business file exchange
$4/env/mo Live
What it does
1
Connects to the SFTP server using key or password authentication
2
Uploads a test file to the configured upload path
3
Reads the file back to verify the upload succeeded
4
Deletes the test file
Bank file exchange
Banks and financial institutions use SFTP to send payment files, statements, and reconciliation data. Monitor that the SFTP endpoint is reachable before your scheduled transfers.
Logistics partners
Shipping and logistics providers use SFTP for order files and tracking data. Detect outages before your order processing pipeline fails.
AWS Transfer Family
Monitor AWS Transfer Family SFTP endpoints — a managed SFTP service commonly used for B2B file exchange.
Government portals
Many government data submission portals use SFTP. Monitor availability before scheduled compliance submissions.
Aspect
SSH probe
SFTP probe
Target
Linux/Unix server (your own infrastructure)
Dedicated SFTP service (yours or a partner's)
Use case
Is my server reachable and healthy?
Is this file transfer service available?
Protocol
SSH + SFTP subsystem
SFTP (may use custom port like 2222)
Auth
Server SSH key (you control it)
SFTP credentials (partner provides them)
Example
Your EC2 instance at 54.12.34.56
Bank's SFTP at sftp.hdfc.com:22
Google Cloud Storage
Monitor GCS buckets for availability and write/read performance
$5/env/mo Live
GCP applications
Monitor GCS buckets used by your Google Cloud applications for file storage, ML datasets, or backups.
ML pipelines
GCS is commonly used for ML training data and model artifacts. Monitor availability before your training jobs start.
FieldDescriptionExample
bucketrequiredGCS bucket namemy-app-data
service_account_keyrequiredGCP service account JSON key (encrypted at rest). Create a service account with Storage Object Admin role on the bucket only.{"type":"service_account",...}
prefixoptionalObject prefix for test filesconnectwatch-probe/
SharePoint
Monitor SharePoint document libraries for file upload availability
$8/env/mo 🔜 Coming soon
SharePoint connector is in development. It will use the Microsoft Graph API to upload a test file to a document library and verify the upload succeeded.

Planned use cases: Monitor SharePoint Online document libraries used for business file storage, collaboration, and compliance archiving.
SMB / Windows Share
Monitor Windows file shares and NAS devices using the SMB protocol
$4/env/mo 🔜 Coming soon
SMB connector is in development. It will connect to Windows file shares and NAS devices using the SMB/CIFS protocol and write a test file.

Planned use cases: Monitor Windows Server file shares, Synology/QNAP NAS devices, and any CIFS-compatible network storage.
Custom webhook
Push probe results to your own systems for custom alerting and SIEM integration
$10/env/mo 🔜 Coming soon
Custom webhook connector is in development. It will POST probe results in a configurable JSON format to any HTTP endpoint — useful for SIEM tools, custom dashboards, and internal alerting systems.

Storage connector comparison

Choosing the right storage connector for your setup:

Connector
Best for
Auth method
Filesystem
NFS mounts, EFS, Azure Files, local disk — anything mounted on a Linux server
SSH key or password to the server
AWS S3
S3 buckets accessed directly via AWS API — not mounted
IAM access key + secret
Azure Blob
Azure Blob containers accessed via Azure Storage API
Storage account connection string
GCS
Google Cloud Storage buckets
GCP service account JSON key
SFTP
Dedicated SFTP services — bank transfers, partner file exchange
SFTP username + key or password
SMB
Windows file shares, NAS devices on local network
Windows domain or local credentials
Quick rule of thumb:
— If it's a Linux server with a mounted filesystem → use Filesystem probe
— If it's an AWS S3 bucket accessed via API → use AWS S3
— If it's a partner's SFTP server for file exchange → use SFTP
— If it's a Windows share or NAS → use SMB (coming soon)