Skip to content

Add Oracle Database Probe Support #698

@dzwvip

Description

@dzwvip

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

  1. 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`
  1. 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

  1. 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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions