Problems With /etc/monit/monit.d/monit-postgresql.conf

16 views
Skip to first unread message

Matt Payne

unread,
Jan 22, 2016, 9:27:52 AM1/22/16
to rubber
Hi,

We're running Rubber 3.2.0, but it's been upgraded several times over the last several years.

I've got our application running on a staging server which hosts all the required roles. One of the roles is PostgreSQL, which is installed and running fine.

Since the I've had the app up on this server - several months now - I've never been able to get /etc/monit/monit.d/monit-postgresql.conf to populate correctly with the rubber_env variables.

The file contents:

/etc/monit/monit.d/monit-postgresql.conf

check process postgresql with pidfile 
   group postgresql-staging
   start program = " restart"
   stop program = " stop"
   if failed host 127.0.0.1 port 5432 protocol pgsql then alert
   if 5 restarts within 5 cycles then timeout


As you can see, the pidfile value is missing as are the start and stop program paths. These come from rubber_env.postgresql_pid_file and rubber_env.postgresql_ctl as far as I can tell.

I've checked rubber-postgresql.yml, and the variables are present. It seems like the file must not be getting pulled into the global rubber_env variable, but I can't figure out why.


As further detail, here's the contents of my instance-staging.yml file:

---
- !ruby/object:Rubber::Configuration::InstanceItem
  name: staging01
  roles:
  - !ruby/object:Rubber::Configuration::RoleItem
    name: web
    options: {}
  - !ruby/object:Rubber::Configuration::RoleItem
    name: app
    options: {}
  - !ruby/object:Rubber::Configuration::RoleItem
    name: unicorn
    options: {}
  - !ruby/object:Rubber::Configuration::RoleItem
    name: nginx
    options: {}
  - !ruby/object:Rubber::Configuration::RoleItem
    name: db
    options:
      primary: true
  - !ruby/object:Rubber::Configuration::RoleItem
    name: postgresql
    options: {}
  - !ruby/object:Rubber::Configuration::RoleItem
    name: postgresql_master
    options: {}
  - !ruby/object:Rubber::Configuration::RoleItem
    name: memcached
    options: {}
  - !ruby/object:Rubber::Configuration::RoleItem
    name: sidekiq
    options: {}
  - !ruby/object:Rubber::Configuration::RoleItem
    name: redis_master
    options: {}
  - !ruby/object:Rubber::Configuration::RoleItem
    name: redis
    options: {}
  - !ruby/object:Rubber::Configuration::RoleItem
    name: collectd
    options: {}
  - !ruby/object:Rubber::Configuration::RoleItem
    name: monit
    options: {}
  instance_id: redacted
  image_type: m3.medium
  image_id: ami-e6296b8e
  security_groups:
  - default
  external_host: redacted
  external_ip:redacted
  internal_host: redacted
  internal_ip: redacted
  zone: us-east-1e
  provider: aws
  platform: linux
  root_device_type: ebs
- volumes: {}
  static_ips: {}



Any thoughts?

Cheers,
Matt

Reply all
Reply to author
Forward
0 new messages