Пример #1
0
def parse_arguments(argv: Optional[Sequence[str]]) -> Args:
    """parse command line arguments and return argument object"""
    parser = create_default_argument_parser(description=__doc__)
    parser.add_argument("--timeout",
                        "-t",
                        type=int,
                        default=20,
                        help="API call timeout")
    parser.add_argument("--port",
                        type=int,
                        default=8006,
                        help="IPv4 port to connect to")
    parser.add_argument("--username",
                        "-u",
                        type=str,
                        help="username for connection")
    parser.add_argument("--password",
                        "-p",
                        type=str,
                        help="password for connection")
    # TODO: warn if log-cutoff-weeks is shorter than actual log length or
    #       shorter than configured check
    parser.add_argument(
        "--log-cutoff-weeks",
        type=int,
        default=2,
        help="Fetch logs N weeks back in time",
    )
    parser.add_argument("--dump-logs",
                        action="store_true",
                        help="dump all backup logs to disk")
    parser.add_argument("--no-cert-check", action="store_true")
    parser.add_argument("hostname",
                        help="Name of the Proxmox VE instance to query.")
    return parser.parse_args(argv)
Пример #2
0
def parse_arguments(argv: Optional[Sequence[str]]) -> Args:

    parser = create_default_argument_parser(description=__doc__)

    parser.add_argument("-u", "--user", default=None, help="Username for elasticsearch login")
    parser.add_argument("-s", "--password", default=None, help="Password for easticsearch login")
    parser.add_argument(
        "-P",
        "--proto",
        default="https",
        help="Use 'http' or 'https' for connection to elasticsearch (default=https)")
    parser.add_argument("-p",
                        "--port",
                        default=9200,
                        type=int,
                        help="Use alternative port (default: 9200)")
    parser.add_argument(
        "-m",
        "--modules",
        type=lambda x: x.split(' '),
        default="cluster_health nodes stats",
        help=
        "Space-separated list of modules to query. Possible values: cluster_health, nodes, stats (default: all)"
    )
    parser.add_argument(
        "hosts",
        metavar="HOSTNAME",
        nargs="+",
        help=
        "You can define one or more elasticsearch instances to query. First instance where data is queried wins."
    )

    return parser.parse_args(argv)
Пример #3
0
def parse_arguments(argv: Optional[Sequence[str]]) -> Args:
    parser = create_default_argument_parser(description=__doc__)
    parser.add_argument(
        "--timeout",
        type=int,
        default=10,
        help="Timeout in seconds for network connects (default=10)",
    )
    parser.add_argument("--server",
                        type=str,
                        required=True,
                        metavar="ADDRESS",
                        help="host to connect to")
    parser.add_argument("--port", type=int, metavar="PORT", default=9440)
    parser.add_argument("--username",
                        type=str,
                        required=True,
                        metavar="USER",
                        help="user account on prism")
    parser.add_argument("--password",
                        type=str,
                        required=True,
                        metavar="PASSWORD",
                        help="password for that account")

    return parser.parse_args(argv)
Пример #4
0
def parse_arguments(argv: Optional[Sequence[str]]) -> Args:
    parser = create_default_argument_parser(description=__doc__)
    parser.add_argument("--username",
                        "-u",
                        type=str,
                        help="username for connection")
    parser.add_argument("--password",
                        "-p",
                        type=str,
                        help="password for connection")
    parser.add_argument("--port", type=int, help="port for connection")
    parser.add_argument("--no-cert-check", action="store_true")
    parser.add_argument(
        "--partition",
        nargs="+",
        type=_get_partition_list,
        help="Partition id for connection parameters (dmPartitionId)",
    )
    parser.add_argument("--hostname",
                        help="Name of the Mobileiron instance to query.")
    parser.add_argument("--proxy-host", help="The address of the proxy server")
    parser.add_argument("--proxy-port", help="The port of the proxy server")
    parser.add_argument(
        "--proxy-user",
        help="The username for authentication of the proxy server")
    parser.add_argument(
        "--proxy-password",
        help="The password for authentication of the proxy server")
    return parser.parse_args(argv)
Пример #5
0
def _parse_arguments(argv: Optional[Sequence[str]]) -> Args:
    parser = create_default_argument_parser(description=__doc__)
    parser.add_argument(
        "host",
        type=str,
        metavar="HOST",
        help="Host name or IP address",
    )
    parser.add_argument(
        "user",
        type=str,
        metavar="USER",
        help="Username",
    )
    parser.add_argument(
        "password",
        type=str,
        metavar="PASSWORD",
        help="Password",
    )
    ipmi_cmd_subparsers = parser.add_subparsers(
        required=True,
        dest="ipmi_cmd",
        metavar="IPMI-CMD",
        help=
        "IPMI command to be used. Possible values are 'freeipmi' or 'ipmitool'.",
    )
    _add_freeipmi_args(ipmi_cmd_subparsers)
    _add_ipmitool_args(ipmi_cmd_subparsers)
    return parser.parse_args(argv)
Пример #6
0
def parse_arguments(argv: Optional[Sequence[str]]) -> Args:
    parser = create_default_argument_parser(description=__doc__)
    parser.add_argument("--project", type=str, help="Global ID of Project")
    parser.add_argument("--credentials",
                        type=str,
                        help="JSON credentials for service account")
    return parser.parse_args(argv)
Пример #7
0
def parse_arguments(argv: Optional[Sequence[str]]) -> Args:
    parser = create_default_argument_parser(description=__doc__)
    parser.add_argument(
        "address",
        type=str,
        metavar="SERVER",
        help="Address used for connecting to the server",
    )
    parser.add_argument(
        "--port",
        type=int,
        metavar="PORT_NUM",
        help="Port used for connecting to the server",
        default=1883,
    )
    parser.add_argument(
        "--protocol",
        type=str,
        choices=["MQTTv31", "MQTTv311", "MQTTv5"],
        default="MQTTv311",
        metavar="PROTOCOL",
        help="MQTT protocol to use ('MQTTv31', 'MQTTv311' or 'MQTTv5')",
    )
    parser.add_argument(
        "--username",
        type=str,
        metavar="USER",
        help="Username for broker authentication",
    )
    parser.add_argument(
        "--password",
        type=str,
        metavar="PASSWORD",
        help="Password for broker authentication",
    )
    parser.add_argument(
        "--client-id",
        type=str,
        metavar="CLIENT_ID",
        help="Unique client ID used for the broker. Will be randomly generated when not set.",
    )
    parser.add_argument(
        "--instance-id",
        type=str,
        default="broker",
        metavar="INSTANCE_ID",
        help="Unique ID used to identify the instance on the host within Checkmk.",
    )
    return parser.parse_args(argv)
Пример #8
0
def parse_arguments(argv: Optional[Sequence[str]]) -> Args:
    parser = create_default_argument_parser(description=__doc__)
    parser.add_argument(
        "hostname",
        type=str,
        metavar="NAME",
        help="Name of the remote host with SMB shares",
    )
    parser.add_argument(
        "ip_address",
        type=str,
        metavar="ADDRESS",
        help="IP address of the remote host",
    )

    parser.add_argument(
        "--username",
        type=str,
        metavar="USERNAME",
        help="User that has rights to access shares",
        default="",
    )

    parser.add_argument(
        "--password",
        type=str,
        metavar="PASSWORD",
        help="Password of user used to connect to the shares",
        default="",
    )

    parser.add_argument("--port",
                        type=int,
                        metavar="PORT",
                        help="Port to be used by SMB client",
                        default=139)
    parser.add_argument(
        "--patterns",
        type=str,
        nargs="*",
        metavar="PATTERN1 PATTERN2 ...",
        help=(
            "Patterns used to filter which files will be monitored."
            "In case of multiple patterns specified, all patterns will be used."
        ),
        default=[],
    )
    return parser.parse_args(argv)
Пример #9
0
def parse_arguments(argv: Optional[Sequence[str]]) -> Args:
    parser = create_default_argument_parser(description=__doc__)
    parser.add_argument("--project",
                        type=str,
                        help="Global ID of Project",
                        required=True)
    parser.add_argument("--credentials",
                        type=str,
                        help="JSON credentials for service account",
                        required=True)
    parser.add_argument(
        "--services",
        nargs="+",
        action="extend",
        help=f"implemented services: {','.join(list(SERVICES))}",
        choices=list(SERVICES) + list(PIGGY_BACK_SERVICES),
        required=True,
    )
    return parser.parse_args(argv)
Пример #10
0
def parse_arguments(argv: Optional[Sequence[str]]) -> Args:
    parser = create_default_argument_parser(description=__doc__)
    parser.add_argument("user",
                        metavar="USER",
                        help="""Username for Observer Role""")
    parser.add_argument("password",
                        metavar="PASSWORD",
                        help="""Password for Observer Role""")
    parser.add_argument("-p",
                        "--port",
                        default=443,
                        type=int,
                        help="Use alternative port (default: 443)")

    parser.add_argument("--verify_ssl", action="store_true", default=False)
    parser.add_argument("host",
                        metavar="HOST",
                        help="""APPLIANCE-ADDRESS of HP StoreOnce""")
    return parser.parse_args(argv)
Пример #11
0
def parse_arguments(argv: Optional[Sequence[str]]) -> Args:
    parser = create_default_argument_parser(description=__doc__)
    parser.add_argument("host", metavar="HOST")
    parser.add_argument("user", metavar="USER")
    parser.add_argument("password", metavar="PASSWORD")
    parser.add_argument(
        "--protocol",
        choices=[
            'http',
            'https',
        ],
        default="https",
        help='specify the connection protocol (default: https)',
    )
    parser.add_argument(
        '--no-cert-check',
        action='store_true',
        help='Disable certificate verification',
    )
    return parser.parse_args(argv)
Пример #12
0
def parse_arguments(args: Optional[Sequence[str]]) -> Args:
    parser = create_default_argument_parser(description=__doc__)
    parser.add_argument(
        "servername",
        type=str,
        metavar="SERVER",
        help="Name of the server",
    )
    parser.add_argument(
        "port",
        type=int,
        metavar="PORT_NUM",
        help="Port used for connecting to the server",
    )
    parser.add_argument(
        "--protocol",
        type=str,
        choices=["http", "https"],
        default="http",
        metavar="PROTOCOL",
        help="Protocol used for connecting to the server ('http' or 'https')",
    )
    parser.add_argument(
        "--piggyback",
        action="store_true",
        help="Activate piggyback mode",
    )
    parser.add_argument(
        "--username",
        type=str,
        metavar="USERNAME",
        help="Username for authenticating at the server",
    )
    parser.add_argument(
        "--password",
        type=str,
        metavar="PASSWORD",
        help="Password for authenticating at the server",
    )
    return parser.parse_args(args)
Пример #13
0
def parse_arguments(argv: Optional[Sequence[str]]) -> Args:
    parser = create_default_argument_parser(description=__doc__)
    parser.add_argument("user", metavar="USER")
    parser.add_argument("password", metavar="PASSWORD")
    parser.add_argument("host", metavar="HOST")
    return parser.parse_args(argv)
Пример #14
0
def parse_arguments(argv: Optional[Sequence[str]]) -> Args:
    parser = create_default_argument_parser(description=__doc__)
    parser.add_argument(
        "hostname",
        type=str,
        metavar="NAME",
        help=(
            "Name of the Checkmk host on which the agent is executed (used as filename to store "
            "the timestamp of the last event)"
        ),
    )
    parser.add_argument(
        "api_key",
        type=str,
        metavar="KEY",
        help="Datatog API Key",
    )
    parser.add_argument(
        "app_key",
        type=str,
        metavar="KEY",
        help="Datadog application key",
    )
    parser.add_argument(
        "api_host",
        type=str,
        metavar="ADDRESS",
        help="Datadog API host to connect to",
    )
    parser.add_argument(
        "--proxy",
        type=str,
        default=None,
        metavar="PROXY",
        help=(
            "HTTP proxy used to connect to the Datadog API. If not set, the environment settings "
            "will be used."
        ),
    )
    parser.add_argument(
        "--sections",
        type=str,
        nargs="*",
        metavar="SECTION1 SECTION2 ...",
        help="Sections to be produced",
        choices=[
            "monitors",
            "events",
        ],
        default=[],
    )
    parser.add_argument(
        "--monitor_tags",
        type=str,
        nargs="*",
        metavar="TAG1 TAG2 ...",
        help="Restrict fetched monitors to tags",
        default=[],
    )
    parser.add_argument(
        "--monitor_monitor_tags",
        type=str,
        nargs="*",
        metavar="TAG1 TAG2 ...",
        help="Restrict fetched monitors to monitor tags",
        default=[],
    )
    parser.add_argument(
        "--event_max_age",
        type=int,
        metavar="AGE",
        help="Restrict maximum age of fetched events (in seconds)",
        default=600,
    )
    parser.add_argument(
        "--event_tags",
        type=str,
        nargs="*",
        metavar="TAG1 TAG2 ...",
        help="Restrict fetched events to tags",
        default=[],
    )
    parser.add_argument(
        "--event_tags_show",
        type=str,
        nargs="*",
        metavar="REGEX1 REGEX2 ...",
        help=(
            "Any tag of a fetched event matching one of these regular expressions will be shown "
            "in the EC"
        ),
        default=[],
    )
    parser.add_argument(
        "--event_syslog_facility",
        type=int,
        metavar="FACILITY",
        help="Syslog facility set when forwarding events to the EC",
        default=1,
    )
    parser.add_argument(
        "--event_syslog_priority",
        type=int,
        metavar="PRIORITY",
        help="Syslog priority set when forwarding events to the EC",
        default=1,
    )
    parser.add_argument(
        "--event_service_level",
        type=int,
        metavar="SL",
        help="Service level set when forwarding events to the EC",
        default=0,
    )
    parser.add_argument(
        "--event_add_text",
        action="store_true",
        help="Add text of events to data forwarded to the EC. Newline characters are replaced by '~'.",
    )
    return parser.parse_args(argv)