Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions logshipper/tail.py
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,8 @@ def read_tail(self, tail):
lines = lines[:-1]

for line in lines:
self.handler({'message': line[:-1]})
message = {'file_path': tail.path, 'message': line[:-1]}
self.handler(message)

def process_tail(self, path, should_seek=False):
file_stat = os.stat(path)
Expand Down Expand Up @@ -197,4 +198,5 @@ def close_tail(self, tail):
os.close(tail.file_descriptor)
if tail.buffer:
LOG.debug("Generating message from tail buffer")
self.handler({'message': tail.buffer})
message = {'file_path': tail.path, 'message': tail.buffer}
self.handler(message)
2 changes: 1 addition & 1 deletion logshipper/test/test_context.py
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ def test_list(self):
self.assertEqual(value, [1, "F 123"])

def test_unknowntype(self):
class Foo():
class Foo(object):
pass

with self.assertRaises(TypeError):
Expand Down
2 changes: 1 addition & 1 deletion logshipper/test/test_elasticsearch.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
class Tests(unittest.TestCase):

def test_elasticsearch_http(self):
class Foo():
class Foo(object):
def __str__(self):
return "1235"

Expand Down
5 changes: 3 additions & 2 deletions logshipper/test/test_filters.py
Original file line number Diff line number Diff line change
Expand Up @@ -158,20 +158,21 @@ def test_strptime_parse_tz(self):
handler = logshipper.filters.prepare_strptime({
"field": "foo",
})
now = datetime.datetime.now()

message = {"foo": "Nov 13 01:22:22 CEST"}
context = logshipper.context.Context(message, None)
result = handler(message, context)
self.assertEqual(result, None)
date = datetime.datetime(2014, 11, 13, 0, 22, 22, 0)
date = datetime.datetime(now.year, 11, 13, 0, 22, 22, 0)
self.assertEqual(message['foo'], date)

def test_strptime_parse(self):
handler = logshipper.filters.prepare_strptime({
"field": "foo",
})

message = {"foo": "Nov 13 01:22:22"}
message = {"foo": "2014 Nov 13 01:22:22"}
context = logshipper.context.Context(message, None)
result = handler(message, context)
self.assertEqual(result, None)
Expand Down
14 changes: 10 additions & 4 deletions logshipper/test/test_tail.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,9 @@ def message_handler(m):
tail.stop()
eventlet.sleep(0.01) # give thread a chance to close the line

self.assertEqual(messages, [{"message": "second line"}])
self.assertEqual(len(messages), 1)
self.assertEqual(messages[0]["file_path"], f.name)
self.assertEqual(messages[0]["message"], "second line")

def test_wildcard(self):
messages = []
Expand All @@ -72,15 +74,19 @@ def message_handler(m):
f.write("line 1\n")

eventlet.sleep(0.01) # give thread a chance to read the line
self.assertEqual(messages, [{"message": "line 1"}])
self.assertEqual(len(messages), 1)
self.assertEqual(messages[0]["message"], "line 1")

LOG.debug("about to write line 2")
with open(path + "/test.log", 'a') as f:
f.write("line 2\n")

eventlet.sleep(0.01) # give thread a chance to read the line
self.assertEqual(messages, [{"message": "line 1"},
{"message": "line 2"}])
self.assertEqual(len(messages), 2)
self.assertEqual(messages[0]["file_path"], path + "/test.log")
self.assertEqual(messages[0]["message"], "line 1")
self.assertEqual(messages[1]["file_path"], path + "/test.log")
self.assertEqual(messages[1]["message"], "line 2")

tail.stop()
eventlet.sleep(0.1) # give thread a chance to close the line
Expand Down