I have completed the database repair as suggested and repeated the testing steps. Here's where it's at:
- There are no more crashed tables being referenced in the log files (win!)
- The notifications still don't notify the PagerDuty service, even if I force a "natural" failure by dropping the thresholds to force critical status
I've done some research in MySQL and found the following to confirm that, even at the database layer, the pagerduty_MSSQL_PROD contact does belong to the MSSQL_Disc_Usage_Notifiy group.
Code: Select all
mysql> select * from nagios_contactgroups where alias like "%Disc_Usage%";
+-----------------+-------------+-------------+------------------------+-------------------------------------+
| contactgroup_id | instance_id | config_type | contactgroup_object_id | alias |
+-----------------+-------------+-------------+------------------------+-------------------------------------+
| 167995 | 1 | 1 | 15956 | PrintNet_Disc_Usage_Notifiy |
| 167987 | 1 | 1 | 11841 | MSSQL_Disc_Usage_Notifiy |
| 167976 | 1 | 1 | 14962 | FTP_Disc_Usage_Notifiy |
| 167966 | 1 | 1 | 11973 | Business_Objects_Disc_Usage_Notifiy |
+-----------------+-------------+-------------+------------------------+-------------------------------------+
4 rows in set (0.00 sec)
mysql> select * from nagios_contactgroup_members where contactgroup_id like "%167987%";
+------------------------+-------------+-----------------+-------------------+
| contactgroup_member_id | instance_id | contactgroup_id | contact_object_id |
+------------------------+-------------+-----------------+-------------------+
| 1061066 | 1 | 167987 | 11840 |
| 1061065 | 1 | 167987 | 11839 |
| 1061064 | 1 | 167987 | 7621 |
| 1061063 | 1 | 167987 | 7618 |
| 1061062 | 1 | 167987 | 11837 |
| 1061061 | 1 | 167987 | 11392 |
| 1061060 | 1 | 167987 | 4302 |
| 1061059 | 1 | 167987 | 3053 |
| 1061058 | 1 | 167987 | 16033 |
| 1061057 | 1 | 167987 | 11836 |
| 1061056 | 1 | 167987 | 11835 |
| 1061055 | 1 | 167987 | 6879 |
| 1061054 | 1 | 167987 | 6093 |
+------------------------+-------------+-----------------+-------------------+
13 rows in set (0.00 sec)
mysql> select * from nagios_contacts where alias like "%pagerduty_MSSQL_PROD%";
+------------+-------------+-------------+-------------------+-------------------------------------------------+---------------+----------------------------------+---------------------------+------------------------------+----------------------------+-------------------------------+---------------------+-------------------------+------------------------+------------------------+-------------------------+-------------------------+-------------------------+----------------------+------------------+-------------------------+----------------------+----------------------+
| contact_id | instance_id | config_type | contact_object_id | alias | email_address | pager_address | host_timeperiod_object_id | service_timeperiod_object_id | host_notifications_enabled | service_notifications_enabled | can_submit_commands | notify_service_recovery | notify_service_warning | notify_service_unknown | notify_service_critical | notify_service_flapping | notify_service_downtime | notify_host_recovery | notify_host_down | notify_host_unreachable | notify_host_flapping | notify_host_downtime |
+------------+-------------+-------------+-------------------+-------------------------------------------------+---------------+----------------------------------+---------------------------+------------------------------+----------------------------+-------------------------------+---------------------+-------------------------+------------------------+------------------------+-------------------------+-------------------------+-------------------------+----------------------+------------------+-------------------------+----------------------+----------------------+
| 616533 | 1 | 1 | 16166 | pagerduty_MSSQL_PROD_HOSTONLY_Tier1_DonorFacing | | a2fa**************************19 | 3334 | 66 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 |
| 616534 | 1 | 1 | 16167 | pagerduty_MSSQL_PROD_Tier1_DonorFacing | | 82c3**************************85 | 3334 | 3334 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 |
| 616532 | 1 | 1 | 16076 | pagerduty_MSSQL_PROD_HOSTONLY | | a2fa**************************19 | 3334 | 66 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 |
| 616531 | 1 | 1 | 16033 | pagerduty_MSSQL_PROD | | 17be**************************9e | 3334 | 3334 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 |
+------------+-------------+-------------+-------------------+-------------------------------------------------+---------------+----------------------------------+---------------------------+------------------------------+----------------------------+-------------------------------+---------------------+-------------------------+------------------------+------------------------+-------------------------+-------------------------+-------------------------+----------------------+------------------+-------------------------+----------------------+----------------------+
4 rows in set (0.00 sec)
The logs are as they were before relating to this particular service assigned to the hostgroup; all other contacts are emailed, PagerDuty API is not called. Where this contact group is applied elsewhere, the PagerDuty API is still being called.