def test_all_fields(self):
        x = Event(thread_id="foo", attrs={"parser": "bar"})
        x.set_message("my_message")
        x.set_sampling_rate(0.5)
        x.set_sequence_id(1)
        x.set_sequence_number(2)
        x.set_sequence_number_delta(3)
        x.set_timestamp(42L)

        output_buffer = StringIO()
        x.serialize(output_buffer)

        self.assertEquals(
            '{thread:"foo", attrs:{"parser":"bar",message:`s\x00\x00\x00\nmy_message,sample_rate:0.5},ts:"42",si:"1",sn:2,sd:3}',
            output_buffer.getvalue(),
        )
        self.assertEquals(
            json_lib.JsonObject(
                thread="foo",
                ts="42",
                si="1",
                sn=2,
                sd=3,
                attrs=json_lib.JsonObject(parser="bar",
                                          message="my_message",
                                          sample_rate=0.5),
            ),
            json_lib.parse(output_buffer.getvalue()),
        )
예제 #2
0
    def test_all_fields(self):
        x = Event(thread_id="foo", attrs={"parser": "bar"})
        x.set_message(b"my_message")
        x.set_sampling_rate(0.5)
        x.set_sequence_id(1)
        x.set_sequence_number(2)
        x.set_sequence_number_delta(3)
        x.set_timestamp(42)

        output_buffer = BytesIO()
        x.serialize(output_buffer)

        self.assertEquals(
            b'{thread:"foo", log:"foo", attrs:{"parser":"bar",message:`s\x00\x00\x00\nmy_message,sample_rate:0.5},ts:"42",si:"1",sn:2,sd:3}',
            output_buffer.getvalue(),
        )

        self.assertEquals(
            {
                "log": "foo",
                "thread": "foo",
                "ts": "42",
                "si": "1",
                "sn": 2,
                "sd": 3,
                "attrs": {
                    "parser": "bar",
                    "message": "my_message",
                    "sample_rate": 0.5
                },
            },
            test_util.parse_scalyr_request(output_buffer.getvalue()),
        )
예제 #3
0
    def test_all_fields(self):
        x = Event(thread_id="foo", attrs={"parser": "bar"})
        x.set_message("my_message")
        x.set_sampling_rate(0.5)
        x.set_sequence_id(1)
        x.set_sequence_number(2)
        x.set_sequence_number_delta(3)
        x.set_timestamp(42L)

        output_buffer = StringIO()
        x.serialize(output_buffer)

        self.assertEquals(
            '{thread:"foo", attrs:{"parser":"bar",message:`s\x00\x00\x00\nmy_message,sample_rate:0.5},ts:"42",si:"1",sn:2,sd:3}',
            output_buffer.getvalue(),
        )
        self.assertEquals(
            json_lib.JsonObject(
                thread="foo",
                ts="42",
                si="1",
                sn=2,
                sd=3,
                attrs=json_lib.JsonObject(parser="bar", message="my_message", sample_rate=0.5),
            ),
            json_lib.parse(output_buffer.getvalue()),
        )
예제 #4
0
    def test_individual_fields(self):
        # snd
        x = Event(thread_id='foo', attrs={"parser": "bar"})
        x.set_message('my_message')
        x.set_sequence_number_delta(3)

        output_buffer = StringIO()
        x.serialize(output_buffer)

        self.assertEquals(
            '{thread:"foo", attrs:{"parser":"bar",message:`s\x00\x00\x00\nmy_message},sd:3}',
            output_buffer.getvalue())

        # timestamp
        x = Event(thread_id='foo', attrs={"parser": "bar"})
        x.set_message('my_message')
        x.set_timestamp(42)

        output_buffer = StringIO()
        x.serialize(output_buffer)

        self.assertEquals(
            '{thread:"foo", attrs:{"parser":"bar",message:`s\x00\x00\x00\nmy_message},ts:"42"}',
            output_buffer.getvalue())

        # sampling_rate
        x = Event(thread_id='foo', attrs={"parser": "bar"})
        x.set_message('my_message')
        x.set_sampling_rate(0.5)

        output_buffer = StringIO()
        x.serialize(output_buffer)

        self.assertEquals(
            '{thread:"foo", attrs:{"parser":"bar",message:`s\x00\x00\x00\nmy_message,sample_rate:0.5}}',
            output_buffer.getvalue())

        # sid
        x = Event(thread_id='foo', attrs={"parser": "bar"})
        x.set_message('my_message')
        x.set_sequence_id('hi')

        output_buffer = StringIO()
        x.serialize(output_buffer)

        self.assertEquals(
            '{thread:"foo", attrs:{"parser":"bar",message:`s\x00\x00\x00\nmy_message},si:"hi"}',
            output_buffer.getvalue())

        # seq num
        x = Event(thread_id='foo', attrs={"parser": "bar"})
        x.set_message('my_message')
        x.set_sequence_number(5)

        output_buffer = StringIO()
        x.serialize(output_buffer)

        self.assertEquals(
            '{thread:"foo", attrs:{"parser":"bar",message:`s\x00\x00\x00\nmy_message},sn:5}',
            output_buffer.getvalue())
예제 #5
0
    def test_individual_fields(self):
        # snd
        x = Event(thread_id='foo', attrs={"parser": "bar"})
        x.set_message('my_message')
        x.set_sequence_number_delta(3)

        output_buffer = StringIO()
        x.serialize(output_buffer)

        self.assertEquals(
            '{thread:"foo", attrs:{"parser":"bar",message:`s\x00\x00\x00\nmy_message},sd:3}',
            output_buffer.getvalue())

        # timestamp
        x = Event(thread_id='foo', attrs={"parser": "bar"})
        x.set_message('my_message')
        x.set_timestamp(42)

        output_buffer = StringIO()
        x.serialize(output_buffer)

        self.assertEquals(
            '{thread:"foo", attrs:{"parser":"bar",message:`s\x00\x00\x00\nmy_message},ts:"42"}',
            output_buffer.getvalue())

        # sampling_rate
        x = Event(thread_id='foo', attrs={"parser": "bar"})
        x.set_message('my_message')
        x.set_sampling_rate(0.5)

        output_buffer = StringIO()
        x.serialize(output_buffer)

        self.assertEquals(
            '{thread:"foo", attrs:{"parser":"bar",message:`s\x00\x00\x00\nmy_message,sample_rate:0.5}}',
            output_buffer.getvalue())

        # sid
        x = Event(thread_id='foo', attrs={"parser": "bar"})
        x.set_message('my_message')
        x.set_sequence_id('hi')

        output_buffer = StringIO()
        x.serialize(output_buffer)

        self.assertEquals(
            '{thread:"foo", attrs:{"parser":"bar",message:`s\x00\x00\x00\nmy_message},si:"hi"}',
            output_buffer.getvalue())

        # seq num
        x = Event(thread_id='foo', attrs={"parser": "bar"})
        x.set_message('my_message')
        x.set_sequence_number(5)

        output_buffer = StringIO()
        x.serialize(output_buffer)

        self.assertEquals(
            '{thread:"foo", attrs:{"parser":"bar",message:`s\x00\x00\x00\nmy_message},sn:5}',
            output_buffer.getvalue())
예제 #6
0
    def test_fast_path_fields(self):
        x = Event(thread_id='foo', attrs={"parser": "bar"})
        x.set_message("my_message")
        x.set_sequence_number_delta(3)
        x.set_timestamp(42L)

        output_buffer = StringIO()
        x.serialize(output_buffer)

        self.assertEquals(
            '{thread:"foo", attrs:{"parser":"bar",message:`s\x00\x00\x00\nmy_message},sd:3,ts:"42"}',
            output_buffer.getvalue())
예제 #7
0
    def test_fast_path_fields(self):
        x = Event(thread_id='foo', attrs={"parser": "bar"})
        x.set_message("my_message")
        x.set_sequence_number_delta(3)
        x.set_timestamp(42L)

        output_buffer = StringIO()
        x.serialize(output_buffer)

        self.assertEquals(
            '{thread:"foo", attrs:{"parser":"bar",message:`s\x00\x00\x00\nmy_message},sd:3,ts:"42"}',
            output_buffer.getvalue())
예제 #8
0
    def test_no_attrs(self):
        x = Event(thread_id="biz")
        x.set_message("my_message")
        x.set_sampling_rate(0.5)
        x.set_sequence_id(1)
        x.set_sequence_number(2)
        x.set_sequence_number_delta(3)
        x.set_timestamp(42L)

        output_buffer = StringIO()
        x.serialize(output_buffer)

        self.assertEquals(
            '{thread:"biz", attrs:{message:`s\x00\x00\x00\nmy_message,sample_rate:0.5},ts:"42",si:"1",sn:2,sd:3}',
            output_buffer.getvalue())
예제 #9
0
    def test_no_attrs(self):
        x = Event(thread_id="biz")
        x.set_message("my_message")
        x.set_sampling_rate(0.5)
        x.set_sequence_id(1)
        x.set_sequence_number(2)
        x.set_sequence_number_delta(3)
        x.set_timestamp(42L)

        output_buffer = StringIO()
        x.serialize(output_buffer)

        self.assertEquals(
            '{thread:"biz", attrs:{message:`s\x00\x00\x00\nmy_message,sample_rate:0.5},ts:"42",si:"1",sn:2,sd:3}',
            output_buffer.getvalue())
예제 #10
0
    def test_no_thread_id(self):
        x = Event(attrs={"parser": "bar"})
        x.set_message("my_message")
        x.set_sampling_rate(0.5)
        x.set_sequence_id(1)
        x.set_sequence_number(2)
        x.set_sequence_number_delta(3)
        x.set_timestamp(42)

        output_buffer = BytesIO()
        x.serialize(output_buffer)

        self.assertEquals(
            b'{attrs:{"parser":"bar",message:`s\x00\x00\x00\nmy_message,sample_rate:0.5},ts:"42",si:"1",sn:2,sd:3}',
            output_buffer.getvalue(),
        )
예제 #11
0
    def test_create_from_template(self):
        x = Event(thread_id='foo', attrs={"parser": "bar"})
        x = Event(base=x)
        x.set_message("my_message")
        x.set_sampling_rate(0.5)
        x.set_sequence_id(1)
        x.set_sequence_number(2)
        x.set_sequence_number_delta(3)
        x.set_timestamp(42L)

        output_buffer = StringIO()
        x.serialize(output_buffer)

        self.assertEquals(
            '{thread:"foo", attrs:{"parser":"bar",message:`s\x00\x00\x00\nmy_message,sample_rate:0.5},ts:"42",si:"1",sn:2,sd:3}',
            output_buffer.getvalue())
예제 #12
0
    def test_create_from_template(self):
        x = Event(thread_id='foo', attrs={"parser": "bar"})
        x = Event(base=x)
        x.set_message("my_message")
        x.set_sampling_rate(0.5)
        x.set_sequence_id(1)
        x.set_sequence_number(2)
        x.set_sequence_number_delta(3)
        x.set_timestamp(42L)

        output_buffer = StringIO()
        x.serialize(output_buffer)

        self.assertEquals(
            '{thread:"foo", attrs:{"parser":"bar",message:`s\x00\x00\x00\nmy_message,sample_rate:0.5},ts:"42",si:"1",sn:2,sd:3}',
            output_buffer.getvalue())
예제 #13
0
    def test_create_from_template_with_add_attributes(self):
        x = Event(thread_id="foo", attrs={"parser": "bar"})
        x = Event(base=x)
        x.set_message("my_message")
        x.set_sampling_rate(0.5)
        x.set_sequence_id(1)
        x.set_sequence_number(2)
        x.set_sequence_number_delta(3)
        x.set_timestamp(42)

        x.add_attributes({"trigger_update": "yes"})

        output_buffer = BytesIO()
        x.serialize(output_buffer)

        self.assertEquals(
            b'{thread:"foo", log:"foo", attrs:{"trigger_update":"yes",message:`s\x00\x00\x00\nmy_message,sample_rate:0.5},ts:"42",si:"1",sn:2,sd:3}',
            output_buffer.getvalue(),
        )