]> CyberLeo.Net >> Repos - CDN/status.git/blob - lib/database_check.rb
Add port to database check; close connection after check
[CDN/status.git] / lib / database_check.rb
1 require 'database_check_exception'
2 require 'mysql'
3
4 class DatabaseCheck < Check
5   def type
6     "Database"
7   end
8
9   def perform_check
10     dsn = URI(uri)
11     scheme = dsn.scheme
12     host = dsn.host
13     port = dsn.port
14     user = dsn.user
15     pass = dsn.password
16     base = dsn.path.gsub(/^\/*|\/*$/, '')
17     raise DatabaseCheckException.unhandled_database_type(scheme) unless scheme == 'mysql'
18     my = Mysql.connect(host, user, pass, base, port)
19     my.query('SELECT CURRENT_TIMESTAMP;')
20     my.close
21   end
22 end