Merge pull request #17 from Clever/INFRA-2521-update-log-stream-parsing

splitter: update log stream parsing
This commit is contained in:
Nathan Leiby 2017-09-20 14:30:23 -07:00 committed by GitHub
commit 81fbb957c4
2 changed files with 6 additions and 4 deletions

View file

@ -65,9 +65,11 @@ func unpack(input []byte) (LogEventBatch, error) {
// RFC3339Micro is the RFC3339 format in microseconds // RFC3339Micro is the RFC3339 format in microseconds
const RFC3339Micro = "2006-01-02T15:04:05.999999-07:00" const RFC3339Micro = "2006-01-02T15:04:05.999999-07:00"
// http://docs.aws.amazon.com/batch/latest/userguide/job_states.html
// "log stream name format is jobDefinitionName/default/ecs_task_id (this format may change in the future)."
const taskMeta = `([a-z0-9-]+)--([a-z0-9-]+)\/` + // env--app const taskMeta = `([a-z0-9-]+)--([a-z0-9-]+)\/` + // env--app
`([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})\/` + // task-id `default\/` +
`([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})` // container-id `([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})` // task-id
var taskRegex = regexp.MustCompile(taskMeta) var taskRegex = regexp.MustCompile(taskMeta)

View file

@ -64,7 +64,7 @@ func TestFullLoop(t *testing.T) {
"messageType": "DATA_MESSAGE", "messageType": "DATA_MESSAGE",
"owner": "123456789012", "owner": "123456789012",
"logGroup": "/aws/batch/job", "logGroup": "/aws/batch/job",
"logStream": "environment--app/11111111-2222-3333-4444-555566667777/88889999-0000-aaa-bbbb-ccccddddeeee", "logStream": "environment--app/default/11111111-2222-3333-4444-555566667777",
"subscriptionFilters": [ "subscriptionFilters": [
"MySubscriptionFilter" "MySubscriptionFilter"
], ],
@ -103,7 +103,7 @@ func TestSplit(t *testing.T) {
MessageType: "DATA_MESSAGE", MessageType: "DATA_MESSAGE",
Owner: "123456789012", Owner: "123456789012",
LogGroup: "/aws/batch/job", LogGroup: "/aws/batch/job",
LogStream: "env--app/12345678-1234-1234-1234-555566667777/88889999-0000-aaaa-bbbb-ccccddddeeee", LogStream: "env--app/default/12345678-1234-1234-1234-555566667777",
SubscriptionFilters: []string{"MySubscriptionFilter"}, SubscriptionFilters: []string{"MySubscriptionFilter"},
LogEvents: []LogEvent{ LogEvents: []LogEvent{
{ {