build/ethr.crescendo.json
{
"$schema": "../Microsoft.PowerShell.Crescendo.Schema.json", "Commands": [ { "Verb": "Invoke", "Noun": "Ethr", "OriginalName": "Ethr.exe", "Description": "This is a PowerShell Crescendo wrapper function for Microsoft ethr", "Parameters": [ { "Name": "help", "OriginalName": "-h", "ParameterType": "switch", "Description": "Produces help from the native command", "Mandatory": true, "ParameterSetName": [ "help" ] }, { "Name": "nologging", "OriginalName": "-no", "ParameterType": "switch", "Description": "Disable logging to file. Logging to file is enabled by default.", "Mandatory": true, "ParameterSetName": [ "noLogServer", "noLogClient", "noLogExternal" ] }, { "Name": "logfile", "OriginalName": "-o", "ParameterType": "string", "DefaultValue": ".\\ethr.log", "Description": "Specify the file to log to. \nex: c:\\output.log", "Mandatory": true, "ParameterSetName": [ "LogServer", "LogClient", "LogExternal" ] }, { "Name": "debuglogging", "OriginalName": "-debug", "ParameterType": "switch", "Description": "Enable debug information in logging output.", "ParameterSetName": [ "LogServer", "LogClient", "LogExternal" ] }, { "Name": "ipv4", "OriginalName": "-4", "ParameterType": "switch", "Description": "Use only IP v4 version", "ParameterSetName": [ "noLogServer", "noLogClient", "noLogExternal", "LogServer", "LogClient", "LogExternal" ] }, { "Name": "ipv6", "OriginalName": "-6", "ParameterType": "switch", "Description": "Use only IP v6 version", "ParameterSetName": [ "noLogServer", "noLogClient", "noLogExternal", "LogServer", "LogClient", "LogExternal" ] }, { "Name": "servermode", "OriginalName": "-s", "ParameterType": "switch", "Description": "Specifies to run Ethr in Server Mode.", "Mandatory": true, "ParameterSetName": [ "noLogServer", "LogServer" ] }, { "Name": "ip", "OriginalName": "-ip", "ParameterType": "string", "Description": "Bind to specified local IP address for TCP & UDP tests. \nThis must be a valid IPv4 or IPv6 address. \nDefault: <empty> - Any IP", "ParameterSetName": [ "noLogServer", "noLogClient", "noLogExternal", "LogServer", "LogClient", "LogExternal" ] }, { "Name": "port", "OriginalName": "-port", "ParameterType": "string", "Description": "Use specified port number for TCP & UDP tests. \nDefault: 8888", "ParameterSetName": [ "noLogServer", "noLogClient", "LogServer", "LogClient" ] }, { "Name": "ui", "OriginalName": "-ui", "ParameterType": "switch", "Description": "Show output in text UI", "ParameterSetName": [ "noLogServer", "LogServer" ] }, { "Name": "serveraddress", "OriginalName": "-c", "ParameterType": "string", "Description": "Run in client mode and connect to <server>. \nServer is specified using name, FQDN or IP address.", "Mandatory": true, "ParameterSetName": [ "noLogClient", "LogClient" ] }, { "Name": "bitrate", "OriginalName": "-b", "ParameterType": "string", "Description": "Transmit only Bits per second (format: <num>[K | M | G]) \nOnly valid for Bandwidth tests. \nDefault: 0 - Unlimited Examples: 100 (100bits/s), 1M (1Mbits/s).", "ParameterSetName": [ "noLogClient", "LogClient" ] }, { "Name": "cport", "OriginalName": "-cport", "ParameterType": "string", "Description": "Use specified local port number in client for TCP & UDP tests. \nDefault: 0 - Ephemeral Port", "ParameterSetName": [ "noLogClient", "noLogExternal", "LogClient", "LogExternal" ] }, { "Name": "duration", "OriginalName": "-d", "ParameterType": "string", "Description": "Duration for the test (format: <num>[ms | s | m | h]. \n0: Run forever Default: 10s", "ParameterSetName": [ "noLogClient", "noLogExternal", "LogClient", "LogExternal" ] }, { "Name": "gap", "OriginalName": "-g", "ParameterType": "string", "Description": "Time interval between successive measurements (format: <num>[ms | s | m | h] \nOnly valid for latency, ping and traceRoute tests. \n0: No gap \nDefault: 1s", "ParameterSetName": [ "noLogClient", "noLogExternal", "LogClient", "LogExternal" ] }, { "Name": "iterations", "OriginalName": "-i", "ParameterType": "string", "Description": "Number of round trip iterations for each latency measurement. \nOnly valid for latency testing. \n0Default: 1000", "ParameterSetName": [ "noLogClient", "LogClient" ] }, { "Name": "length", "OriginalName": "-l", "ParameterType": "string", "Description": "Length of buffer (in Bytes) to use (format: <num>[KB | MB | GB]) \nOnly valid for Bandwidth tests. Max 1GB. \nDefault: 16KB", "ParameterSetName": [ "noLogClient", "LogClient" ] }, { "Name": "throttle", "OriginalName": "-n", "ParameterType": "string", "Description": "Number of Parallel Sessions (and Threads). \n0: Equal to number of CPUs \nDefault: 1", "ParameterSetName": [ "noLogClient", "noLogExternal", "LogClient", "LogExternal" ] }, { "Name": "clientprotocol", "OriginalName": "-p", "ParameterType": "string", "Description": "Protocol ('tcp', 'udp', 'http', 'https', or 'icmp') \nDefault: tcp", "ParameterSetName": [ "noLogClient", "LogClient" ], "AdditionalParameterAttributes": [ "[ValidateSet('tcp', 'udp', 'http', 'https', 'icmp')]" ] }, { "Name": "externalprotocol", "OriginalName": "-p", "ParameterType": "string", "Description": "Protocol ('tcp', or 'icmp') \nDefault: tcp", "ParameterSetName": [ "noLogExternal", "LogExternal" ], "AdditionalParameterAttributes": [ "[ValidateSet('tcp', 'icmp')]" ] }, { "Name": "receive", "OriginalName": "-r", "ParameterType": "switch", "Description": "For Bandwidth tests, send data from server to client.", "ParameterSetName": [ "noLogClient", "LogClient" ] }, { "Name": "testclient", "OriginalName": "-t", "ParameterType": "string", "Description": "Test to run ('b', 'c', 'p', 'l', 'pi', 'tr', or 'mtr') \nb: Bandwidth \nc: Connections/s \np: Packets/s \nl: Latency, Loss & Jitter \npi: Ping Loss & Latency \ntr: TraceRoute \nmtr: MyTraceRoute with Loss & Latency \nDefault: b - Bandwidth measurement.", "ParameterSetName": [ "noLogClient", "LogClient" ], "AdditionalParameterAttributes": [ "[ValidateSet('b', 'c', 'p', 'l', 'pi', 'tr', 'mtr')]" ] }, { "Name": "testexternal", "OriginalName": "-t", "ParameterType": "string", "Description": "Test to run ('c', 'pi', 'tr', or 'mtr') \nc: Connections/s \npi: Ping Loss & Latency \ntr: TraceRoute \nmtr: MyTraceRoute with Loss & Latency \nDefault: pi - Ping Loss & Latency.", "ParameterSetName": [ "noLogExternal", "LogExternal" ], "AdditionalParameterAttributes": [ "[ValidateSet('c', 'pi', 'tr', 'mtr')]" ] }, { "Name": "tos", "OriginalName": "-tos", "ParameterType": "switch", "Description": "Specifies 8-bit value to use in IPv4 TOS field or IPv6 Traffic Class field.", "ParameterSetName": [ "noLogClient", "noLogExternal", "LogClient", "LogExternal" ] }, { "Name": "warmup", "OriginalName": "-w", "ParameterType": "string", "Description": "Use specified number of iterations for warmup. \nDefault: 1", "ParameterSetName": [ "noLogClient", "noLogExternal", "LogClient", "LogExternal" ] }, { "Name": "logtitle", "OriginalName": "-T", "ParameterType": "string", "Description": "Use the given title in log files for logging results. \nDefault: <empty>", "ParameterSetName": [ "LogClient", "LogExternal" ] }, { "Name": "destination", "OriginalName": "-x", "ParameterType": "string", "Description": "Run in external client mode and connect to <destination>. \n<destination> is specified in URL or Host:Port format. \nFor URL, if port is not specified, it is assumed to be 80 for http and 443 for https. \nExample: For TCP - www.microsoft.com: 443 or 10.1.0.4: 22 or https: //www.github.com \n For ICMP - www.microsoft.com or 10.1.0.4", "Mandatory": true, "ParameterSetName": [ "noLogExternal", "LogExternal" ] } ] } ] } |