def __init__(self):
    super(SettingAlert, self).__init__()
    self.parser.prog = 'couchbase-cli setting-alert'
    group = self.parser.add_argument_group('Alert settings')
    group.add_argument('--enable-email-alert', dest='enabled', metavar='<1|0>', required=True, choices=['0', '1'], help='Enable/disable email alerts')
    group.add_argument('--email-recipients', dest='email_recipients', metavar='<email_list>', help='A comma separated list of email addresses')
    group.add_argument('--email-sender', dest='email_sender', metavar='<email_addr>', help='The sender email address')
    group.add_argument('--email-user', dest='email_username', metavar='<username>', default='', help='The email server username')
    group.add_argument('--email-password', dest='email_password', metavar='<password>', default='', help='The email server password')
    group.add_argument('--email-host', dest='email_host', metavar='<host>', help='The email server host')
    group.add_argument('--email-port', dest='email_port', metavar='<port>', help='The email server port')
    group.add_argument('--enable-email-encrypt', dest='email_encrypt', metavar='<1|0>', choices=['0', '1'], help='Enable SSL encryption for emails')
    group.add_argument('--alert-auto-failover-node', dest='alert_af_node', action='store_true', help='Alert when a node is auto-failed over')
    group.add_argument('--alert-auto-failover-max-reached', dest='alert_af_max_reached', action='store_true', help='Alert when the max number of auto-failover nodes was reached')
    group.add_argument('--alert-auto-failover-node-down', dest='alert_af_node_down', action='store_true', help=("Alert when a node wasn't auto-failed over because other nodes " + 'were down'))
    group.add_argument('--alert-auto-failover-cluster-small', dest='alert_af_small', action='store_true', help=("Alert when a node wasn't auto-failed over because cluster was" + ' too small'))
    group.add_argument('--alert-auto-failover-disable', dest='alert_af_disable', action='store_true', help=("Alert when a node wasn't auto-failed over because auto-failover" + ' is disabled'))
    group.add_argument('--alert-ip-changed', dest='alert_ip_changed', action='store_true', help='Alert when a nodes IP address changed')
    group.add_argument('--alert-disk-space', dest='alert_disk_space', action='store_true', help='Alert when disk usage on a node reaches 90%%')
    group.add_argument('--alert-meta-overhead', dest='alert_meta_overhead', action='store_true', help='Alert when metadata overhead is more than 50%%')
    group.add_argument('--alert-meta-oom', dest='alert_meta_oom', action='store_true', help='Alert when all bucket memory is used for metadata')
    group.add_argument('--alert-write-failed', dest='alert_write_failed', action='store_true', help='Alert when writing data to disk has failed')
    group.add_argument('--alert-audit-msg-dropped', dest='alert_audit_dropped', action='store_true', help='Alert when writing event to audit log failed')
    group.add_argument('--alert-indexer-max-ram', dest='alert_indexer_max_ram', action='store_true', help='Alert when indexer is using all of its allocated memory')
    group.add_argument('--alert-timestamp-drift-exceeded', dest='alert_cas_drift', action='store_true', help=('Alert when clocks on two servers are more than five seconds' + 'apart'))
    group.add_argument('--alert-communication-issue', dest='alert_communication_issue', action='store_true', help='Alert when nodes are experiencing communication issues')
def __init__(self):
    super(SettingAlert, self).__init__()
    self.parser.prog = 'couchbase-cli setting-alert'
    group = self.parser.add_argument_group('Alert settings')
    group.add_argument('--enable-email-alert', dest='enabled', metavar='<1|0>', required=True, choices=['0', '1'], help='Enable/disable email alerts')
    group.add_argument('--email-recipients', dest='email_recipients', metavar='<email_list>', help='A comma separated list of email addresses')
    group.add_argument('--email-sender', dest='email_sender', metavar='<email_addr>', help='The sender email address')
    group.add_argument('--email-user', dest='email_username', metavar='<username>', default=, help='The email server username')
    group.add_argument('--email-password', dest='email_password', metavar='<password>', default=, help='The email server password')
    group.add_argument('--email-host', dest='email_host', metavar='<host>', help='The email server host')
    group.add_argument('--email-port', dest='email_port', metavar='<port>', help='The email server port')
    group.add_argument('--enable-email-encrypt', dest='email_encrypt', metavar='<1|0>', choices=['0', '1'], help='Enable SSL encryption for emails')
    group.add_argument('--alert-auto-failover-node', dest='alert_af_node', action='store_true', help='Alert when a node is auto-failed over')
    group.add_argument('--alert-auto-failover-max-reached', dest='alert_af_max_reached', action='store_true', help='Alert when the max number of auto-failover nodes was reached')
    group.add_argument('--alert-auto-failover-node-down', dest='alert_af_node_down', action='store_true', help=("Alert when a node wasn't auto-failed over because other nodes " + 'were down'))
    group.add_argument('--alert-auto-failover-cluster-small', dest='alert_af_small', action='store_true', help=("Alert when a node wasn't auto-failed over because cluster was" + ' too small'))
    group.add_argument('--alert-auto-failover-disable', dest='alert_af_disable', action='store_true', help=("Alert when a node wasn't auto-failed over because auto-failover" + ' is disabled'))
    group.add_argument('--alert-ip-changed', dest='alert_ip_changed', action='store_true', help='Alert when a nodes IP address changed')
    group.add_argument('--alert-disk-space', dest='alert_disk_space', action='store_true', help='Alert when disk usage on a node reaches 90%%')
    group.add_argument('--alert-meta-overhead', dest='alert_meta_overhead', action='store_true', help='Alert when metadata overhead is more than 50%%')
    group.add_argument('--alert-meta-oom', dest='alert_meta_oom', action='store_true', help='Alert when all bucket memory is used for metadata')
    group.add_argument('--alert-write-failed', dest='alert_write_failed', action='store_true', help='Alert when writing data to disk has failed')
    group.add_argument('--alert-audit-msg-dropped', dest='alert_audit_dropped', action='store_true', help='Alert when writing event to audit log failed')
    group.add_argument('--alert-indexer-max-ram', dest='alert_indexer_max_ram', action='store_true', help='Alert when indexer is using all of its allocated memory')
    group.add_argument('--alert-timestamp-drift-exceeded', dest='alert_cas_drift', action='store_true', help=('Alert when clocks on two servers are more than five seconds' + 'apart'))
    group.add_argument('--alert-communication-issue', dest='alert_communication_issue', action='store_true', help='Alert when nodes are experiencing communication issues')