-
Notifications
You must be signed in to change notification settings - Fork 240
Description
Background & X Problem
Add Oracle database probe support to EaseProbe using the go-ora Oracle driver written in pure Go.
Currently, EaseProbe supports various databases (MySQL, PostgreSQL, Redis, etc.) but lacks native support for Oracle Database. Many enterprise environments still rely on Oracle as their core database system. Adding this capability would significantly enhance EaseProbe's applicability in enterprise monitoring scenarios.
Benefits
Enterprise Readiness: Oracle Database is widely used in enterprise applications
Simplified Deployment: Pure Go implementation eliminates dependency on Oracle Instant Client
Comprehensive Monitoring: Enable health checks, performance monitoring, and custom query validation for Oracle databases
Consistent Experience: Extend EaseProbe's unified probing interface to Oracle environments
Suggested Implementation Approach
- Configuration Structure
yaml
`oracle:
- name: "Oracle Production DB"
host: "oracle-prod.example.com"
port: 1521
service: "ORCL"
username: "${ORACLE_USER}"
password: "${ORACLE_PASSWORD}"Optional configurations
query: "SELECT 1 FROM DUAL" # Custom health check query
timeout: 30s`
- Driver Selection Justification
go-ora is a pure Go Oracle client, no Oracle Instant Client required
Simple installation and deployment with excellent cross-platform support
Actively maintained with compatibility across various Oracle versions
No CGO dependencies, making compilation and distribution easier
- Core Capabilities
Basic connection testing and validation
Custom SQL query execution for business logic verification
Connection response time monitoring
SSL/TLS connection support for secure environments
Service name and SID connection string support