This repository has been archived by the owner on Feb 18, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 96
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
CLI: fix defaults; make consistent with admin cli (#246)
* CLI: fix defaults * fix admin cli * fix owner email * cr feedback * fix zone
- Loading branch information
Showing
3 changed files
with
73 additions
and
70 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -22,10 +22,22 @@ package main | |
|
||
import ( | ||
"os" | ||
"time" | ||
|
||
"github.com/codegangsta/cli" | ||
"github.com/uber/cherami-server/common" | ||
"github.com/uber/cherami-server/tools/admin" | ||
toolscommon "github.com/uber/cherami-server/tools/common" | ||
) | ||
|
||
const ( | ||
usageCGStartTime = `Consume messages newer than this time in unix-nanos (default: Now; ie, consume no previously published messages)` | ||
usageCGLockTimeoutSeconds = `Acknowledgement timeout for prefetched/received messages` | ||
usageCGMaxDeliveryCount = `Max number of times a message is delivered before it is sent to the DLQ (dead-letter queue)` | ||
usageCGSkipOlderMessagesInSeconds = `Skip messages older than this duration, in seconds ('0' to skip none)` | ||
usageCGDelaySeconds = `Delay, in seconds, to defer all messages by` | ||
usageCGOwnerEmail = "Owner email" | ||
usageCGZoneConfig = "Zone configs for multi-zone CG. For each zone, specify \"Zone,PreferedActiveZone\"; ex: \"zone1,false\"" | ||
) | ||
|
||
func main() { | ||
|
@@ -95,13 +107,13 @@ func main() { | |
|
||
cli.IntFlag{ | ||
Name: "consumed_messages_retention, cr", | ||
Value: 3600, | ||
Value: toolscommon.DefaultConsumedMessagesRetention, | ||
Usage: "Consumed messages retention period specified in seconds. Default is 1 hour.", | ||
}, | ||
|
||
cli.IntFlag{ | ||
Name: "unconsumed_messages_retention, ur", | ||
Value: 7200, | ||
Value: toolscommon.DefaultUnconsumedMessagesRetention, | ||
Usage: "Unconsumed messages retention period specified in seconds. Default is two hours.", | ||
}, | ||
cli.StringFlag{ | ||
|
@@ -111,7 +123,7 @@ func main() { | |
}, | ||
cli.StringFlag{ | ||
Name: "owner_email, oe", | ||
Value: "", | ||
Value: cliHelper.GetDefaultOwnerEmail(), | ||
Usage: "The owner's email who commits the request. Default is the [email protected]", | ||
}, | ||
}, | ||
|
@@ -126,33 +138,37 @@ func main() { | |
Flags: []cli.Flag{ | ||
cli.IntFlag{ | ||
Name: "start_time, s", | ||
Value: 0, | ||
Usage: "Start this consumer group at this UNIX timestamp; by default we start at this Unix timestamp (seconds since 1970-1-1)", | ||
Value: int(time.Now().Unix()), | ||
Usage: usageCGStartTime, | ||
}, | ||
cli.IntFlag{ | ||
Name: "lock_timeout_seconds, l", | ||
Value: 60, | ||
Usage: "Ack timeout for each message", | ||
Value: toolscommon.DefaultLockTimeoutSeconds, | ||
Usage: usageCGLockTimeoutSeconds, | ||
}, | ||
cli.IntFlag{ | ||
Name: "max_delivery_count, m", | ||
Value: 10, | ||
Usage: "Maximum delivery count for a message before it sents to dead-letter queue", | ||
Value: toolscommon.DefaultMaxDeliveryCount, | ||
Usage: usageCGMaxDeliveryCount, | ||
}, | ||
cli.IntFlag{ | ||
Name: "skip_older_messages_in_seconds, k", | ||
Value: 0, | ||
Usage: "Skip messages older than this duration in seconds ('0' to skip none).", | ||
Value: toolscommon.DefaultSkipOlderMessageSeconds, | ||
Usage: usageCGSkipOlderMessagesInSeconds, | ||
}, | ||
cli.IntFlag{ | ||
Name: "delay_seonds, d", | ||
Value: 0, | ||
Usage: "Delay to add to every message, in seconds.", | ||
Name: "delay_seconds, d", | ||
Value: toolscommon.DefaultDelayMessageSeconds, | ||
Usage: usageCGDelaySeconds, | ||
}, | ||
cli.StringFlag{ | ||
Name: "owner_email, oe", | ||
Value: "", | ||
Usage: "The owner's email who commits the request. Default is the [email protected]", | ||
Value: cliHelper.GetDefaultOwnerEmail(), | ||
Usage: usageCGOwnerEmail, | ||
}, | ||
cli.StringSliceFlag{ | ||
Name: "zone_config, zc", | ||
Usage: usageCGZoneConfig, | ||
}, | ||
}, | ||
Action: func(c *cli.Context) { | ||
|
@@ -295,27 +311,22 @@ func main() { | |
Flags: []cli.Flag{ | ||
cli.StringFlag{ | ||
Name: "status, s", | ||
Value: "enabled", | ||
Usage: "status: enabled | disabled | sendonly | recvonly", | ||
}, | ||
cli.IntFlag{ | ||
Name: "consumed_messages_retention, cr", | ||
Value: 3600, | ||
Usage: "Consumed messages retention period specified in seconds. Default is one hour.", | ||
}, | ||
cli.IntFlag{ | ||
Name: "unconsumed_messages_retention, ur", | ||
Value: 7200, | ||
Usage: "Unconsumed messages retention period specified in seconds. Default is two hours.", | ||
}, | ||
cli.StringFlag{ | ||
Name: "checksum_option, co", | ||
Value: "", | ||
Usage: "Checksum_options, can be one of the crcIEEE, md5", | ||
}, | ||
cli.StringFlag{ | ||
Name: "owner_email, oe", | ||
Value: "", | ||
Usage: "The updated owner's email", | ||
}, | ||
cli.StringSliceFlag{ | ||
|
@@ -334,37 +345,30 @@ func main() { | |
Flags: []cli.Flag{ | ||
cli.StringFlag{ | ||
Name: "status, s", | ||
Value: "enabled", | ||
Usage: "status: enabled | disabled", | ||
}, | ||
cli.IntFlag{ | ||
Name: "lock_timeout_seconds, l", | ||
Value: 60, | ||
Usage: "Ack timeout for each message", | ||
}, | ||
cli.IntFlag{ | ||
Name: "max_delivery_count, m", | ||
Value: 10, | ||
Usage: "Maximum delivery count for a message before it sents to dead-letter queue", | ||
}, | ||
cli.IntFlag{ | ||
Name: "skip_older_messages_in_seconds, k", | ||
Value: 7200, | ||
Usage: "Skip messages older than this duration in seconds.", | ||
}, | ||
cli.IntFlag{ | ||
Name: "delay_seonds, d", | ||
Value: 0, | ||
Usage: "Delay to add to every message, in seconds.", | ||
}, | ||
cli.StringFlag{ | ||
Name: "owner_email, oe", | ||
Value: "", | ||
Usage: "The updated owner's email", | ||
}, | ||
cli.StringFlag{ | ||
Name: "active_zone, az", | ||
Value: "", | ||
Usage: "The updated active zone", | ||
}, | ||
cli.StringSliceFlag{ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -27,18 +27,17 @@ import ( | |
"github.com/codegangsta/cli" | ||
"github.com/uber/cherami-server/common" | ||
lib "github.com/uber/cherami-server/tools/cli" | ||
toolscommon "github.com/uber/cherami-server/tools/common" | ||
) | ||
|
||
const ( | ||
strLockTimeoutSeconds = `Acknowledgement timeout for prefetched/received messages` | ||
|
||
strMaxDeliveryCount = "Maximum number of times a message is delivered\n\tbefore it is sent to the dead-letter queue (DLQ)" | ||
|
||
strSkipOlderMessagesInSeconds = `Skip messages older than this duration in seconds ('0' to skip none)` | ||
intSkipOlderMessagesInSeconds = 0 // 0 -> skip none | ||
|
||
strDelaySeconds = `Delay to introduce to all messages, in seconds.` | ||
intDelaySeconds = 0 // zero delay, by default | ||
usageCGStartTime = `Consume messages newer than this time in unix-nanos (default: Now; ie, consume no previously published messages)` | ||
usageCGLockTimeoutSeconds = `Acknowledgement timeout for prefetched/received messages` | ||
usageCGMaxDeliveryCount = `Max number of times a message is delivered before it is sent to the DLQ (dead-letter queue)` | ||
usageCGSkipOlderMessagesInSeconds = `Skip messages older than this duration, in seconds ('0' to skip none)` | ||
usageCGDelaySeconds = `Delay, in seconds, to defer all messages by` | ||
usageCGOwnerEmail = "Owner email" | ||
usageCGZoneConfig = "Zone configs for multi-zone CG. For each zone, specify \"Zone,PreferedActiveZone\"; ex: \"zone1,false\"" | ||
) | ||
|
||
func main() { | ||
|
@@ -103,13 +102,13 @@ func main() { | |
}, | ||
cli.IntFlag{ | ||
Name: "consumed_messages_retention, cr", | ||
Value: 3600, | ||
Usage: "Consumed messages retention period specified in seconds. Default is 1 hour.", | ||
Value: toolscommon.DefaultConsumedMessagesRetention, | ||
Usage: "Consumed messages retention period specified in seconds (default: 1 day)", | ||
}, | ||
cli.IntFlag{ | ||
Name: "unconsumed_messages_retention, ur", | ||
Value: 7200, | ||
Usage: "Unconsumed messages retention period specified in seconds. Default is two hours.", | ||
Value: toolscommon.DefaultUnconsumedMessagesRetention, | ||
Usage: "Unconsumed messages retention period specified in seconds (default: 3 days)", | ||
}, | ||
cli.StringFlag{ | ||
Name: "checksum_option, co", | ||
|
@@ -123,7 +122,7 @@ func main() { | |
}, | ||
cli.StringSliceFlag{ | ||
Name: "zone_config, zc", | ||
Usage: "Zone configs for multi_zone destinations. Format for each zone should be \"ZoneName,AllowPublish,AllowConsume,ReplicaCount\". For example: \"zone1,true,true,3\"", | ||
Usage: "Zone configs for multi_zone destinations. Format for each zone should be \"Zone,AllowPublish,AllowConsume,ReplicaCount\". Ex: \"zone1,true,true,3\"", | ||
}, | ||
cli.StringFlag{ | ||
Name: "kafka_cluster, kc", | ||
|
@@ -146,36 +145,36 @@ func main() { | |
cli.IntFlag{ | ||
Name: "start_time, s", | ||
Value: int(time.Now().Unix()), | ||
Usage: "Consume messages newer than this UNIX timestamp.\n\tDefault: now (i.e. consume no existing messages)\n\tUse `date -d \"2017-06-11 6:42:42 -7:00\" +%s` to determine a value for this.", | ||
Usage: usageCGStartTime, | ||
}, | ||
cli.IntFlag{ | ||
Name: "lock_timeout_seconds, l", | ||
Value: 60, | ||
Usage: strLockTimeoutSeconds, | ||
Value: toolscommon.DefaultLockTimeoutSeconds, | ||
Usage: usageCGLockTimeoutSeconds, | ||
}, | ||
cli.IntFlag{ | ||
Name: "max_delivery_count, m", | ||
Value: 10, | ||
Usage: strMaxDeliveryCount, | ||
Value: toolscommon.DefaultMaxDeliveryCount, | ||
Usage: usageCGMaxDeliveryCount, | ||
}, | ||
cli.IntFlag{ | ||
Name: "skip_older_messages_in_seconds, k", | ||
Value: intSkipOlderMessagesInSeconds, | ||
Usage: strSkipOlderMessagesInSeconds, | ||
Value: toolscommon.DefaultSkipOlderMessageSeconds, | ||
Usage: usageCGSkipOlderMessagesInSeconds, | ||
}, | ||
cli.IntFlag{ | ||
Name: "delay_seconds, d", | ||
Value: intDelaySeconds, | ||
Usage: strDelaySeconds, | ||
Value: toolscommon.DefaultDelayMessageSeconds, | ||
Usage: usageCGDelaySeconds, | ||
}, | ||
cli.StringFlag{ | ||
Name: "owner_email, oe", | ||
Value: cliHelper.GetDefaultOwnerEmail(), | ||
Usage: "The owner's email. Default is the [email protected]", | ||
Usage: usageCGOwnerEmail, | ||
}, | ||
cli.StringSliceFlag{ | ||
Name: "zone_config, zc", | ||
Usage: "Zone configs for multi_zone consumer group. Format for each zone should be \"ZoneName,PreferedActiveZone\". For example: \"zone1,false\"", | ||
Usage: usageCGZoneConfig, | ||
}, | ||
}, | ||
Action: func(c *cli.Context) { | ||
|
@@ -249,27 +248,22 @@ func main() { | |
Flags: []cli.Flag{ | ||
cli.StringFlag{ | ||
Name: "status, s", | ||
Value: "enabled", | ||
Usage: "status: enabled | disabled | sendonly | recvonly", | ||
}, | ||
cli.IntFlag{ | ||
Name: "consumed_messages_retention, cr", | ||
Value: 3600, | ||
Usage: "Consumed messages retention period specified in seconds. Default is one hour.", | ||
}, | ||
cli.IntFlag{ | ||
Name: "unconsumed_messages_retention, ur", | ||
Value: 7200, | ||
Usage: "Unconsumed messages retention period specified in seconds. Default is two hours.", | ||
}, | ||
cli.StringFlag{ | ||
Name: "checksum_option, co", | ||
Value: "", | ||
Usage: "Checksum_options, can be one of the crcIEEE, md5", | ||
}, | ||
cli.StringFlag{ | ||
Name: "owner_email, oe", | ||
Value: cliHelper.GetDefaultOwnerEmail(), | ||
Usage: "The updated owner's email", | ||
}, | ||
cli.StringSliceFlag{ | ||
|
@@ -288,37 +282,30 @@ func main() { | |
Flags: []cli.Flag{ | ||
cli.StringFlag{ | ||
Name: "status, s", | ||
Value: "enabled", | ||
Usage: "status: enabled | disabled", | ||
}, | ||
cli.IntFlag{ | ||
Name: "lock_timeout_seconds, l", | ||
Value: 60, | ||
Usage: strLockTimeoutSeconds, | ||
Usage: usageCGLockTimeoutSeconds, | ||
}, | ||
cli.IntFlag{ | ||
Name: "max_delivery_count, m", | ||
Value: 10, | ||
Usage: strMaxDeliveryCount, | ||
Usage: usageCGMaxDeliveryCount, | ||
}, | ||
cli.IntFlag{ | ||
Name: "skip_older_messages_in_seconds, k", | ||
Value: intSkipOlderMessagesInSeconds, | ||
Usage: strSkipOlderMessagesInSeconds, | ||
Usage: usageCGSkipOlderMessagesInSeconds, | ||
}, | ||
cli.IntFlag{ | ||
Name: "delay_seconds, d", | ||
Value: intDelaySeconds, | ||
Usage: strDelaySeconds, | ||
Usage: usageCGDelaySeconds, | ||
}, | ||
cli.StringFlag{ | ||
Name: "owner_email, oe", | ||
Value: cliHelper.GetDefaultOwnerEmail(), | ||
Usage: "The updated owner's email", | ||
Usage: usageCGOwnerEmail, | ||
}, | ||
cli.StringFlag{ | ||
Name: "active_zone, az", | ||
Value: "", | ||
Usage: "The updated active zone", | ||
}, | ||
cli.StringSliceFlag{ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters