Skip to content

Commit 824bd5a

Browse files
committed
Add journald format testcases
Signed-off-by: Hiroshi Hatake <[email protected]>
1 parent be4d354 commit 824bd5a

File tree

1 file changed

+135
-99
lines changed

1 file changed

+135
-99
lines changed

test/plugin/test_filter_concat.rb

Lines changed: 135 additions & 99 deletions
Original file line numberDiff line numberDiff line change
@@ -643,75 +643,87 @@ def filter_with_time(conf, messages, wait: nil)
643643
end
644644

645645
sub_test_case "partial meta (for Docker 19.03 or later)" do
646-
test "partial messages only" do
646+
data("docker-fluentd format" => ["docker-fluentd",
647+
"partial_message", "partial_id",
648+
"partial_ordinal", "partial_last"],
649+
"docker-journald format" => ["docker-journald",
650+
"CONTAINER_PARTIAL_MESSAGE", "CONTAINER_PARTIAL_ID",
651+
"CONTAINER_PARTIAL_ORDINAL", "CONTAINER_PARTIAL_LAST"],
652+
"docker-journald-lowercase format" => ["docker-journald-lowercase",
653+
"container_partial_message", "container_partial_id",
654+
"container_partial_ordinal", "container_partial_last"],
655+
)
656+
test "partial messages only" do |data|
657+
partial_metadata_format, partial_message_key, partial_id_key, partial_ordinal_key, partial_last_key = data
647658
config = <<-CONFIG
648659
key message
649660
use_partial_metadata true
661+
partial_metadata_format #{partial_metadata_format}
650662
CONFIG
651663
messages = [
652664
{
653665
"container_id" => "1",
654666
"message" => "start",
655-
"partial_message" => "true",
656-
"partial_id" => "partial1",
657-
"partial_ordinal" => "1",
658-
"partial_last" => "false"
667+
partial_message_key => "true",
668+
partial_id_key => "partial1",
669+
partial_ordinal_key => "1",
670+
partial_last_key => "false"
659671
},
660672
{
661673
"container_id" => "1",
662674
"message" => " message 1",
663-
"partial_message" => "true",
664-
"partial_id" => "partial1",
665-
"partial_ordinal" => "2",
666-
"partial_last" => "false"
675+
partial_message_key => "true",
676+
partial_id_key => "partial1",
677+
partial_ordinal_key => "2",
678+
partial_last_key => "false"
667679
},
668680
{
669681
"container_id" => "1",
670682
"message" => " message 2",
671-
"partial_message" => "true",
672-
"partial_id" => "partial1",
673-
"partial_ordinal" => "3",
674-
"partial_last" => "false"
683+
partial_message_key => "true",
684+
partial_id_key => "partial1",
685+
partial_ordinal_key => "3",
686+
partial_last_key => "false"
675687
},
676688
{
677689
"container_id" => "1",
678690
"message" => "end",
679-
"partial_message" => "true",
680-
"partial_id" => "partial1",
681-
"partial_ordinal" => "4",
682-
"partial_last" => "true"
691+
partial_message_key => "true",
692+
partial_id_key => "partial1",
693+
partial_ordinal_key => "4",
694+
partial_last_key => "true"
683695
},
684696
{
685697
"container_id" => "1",
686698
"message" => "start",
687-
"partial_message" => "true",
688-
"partial_id" => "partial2",
689-
"partial_ordinal" => "1",
690-
"partial_last" => "false"
699+
partial_message_key => "true",
700+
partial_id_key => "partial2",
701+
partial_ordinal_key => "1",
702+
partial_last_key => "false"
691703
},
692704
{
693705
"container_id" => "1",
694706
"message" => " message 3",
695-
"partial_message" => "true",
696-
"partial_id" => "partial2",
697-
"partial_ordinal" => "2",
698-
"partial_last" => "false"
707+
partial_message_key => "true",
708+
partial_id_key => "partial2",
709+
partial_ordinal_key => "2",
710+
partial_last_key => "false"
699711
},
700712
{
701713
"container_id" => "1",
702714
"message" => " message 4",
703-
"partial_message" => "true",
704-
"partial_id" => "partial2",
705-
"partial_ordinal" => "3",
706-
"partial_last" => "false"
715+
partial_message_key => "true",
716+
partial_id_key => "partial2",
717+
partial_ordinal_key => "3",
718+
partial_last_key => "false"
707719
},
708720
{
709721
"container_id" => "1",
710722
"message" => "end",
711-
"partial_message" => "true",
712-
"partial_id" => "partial2",
713-
"partial_ordinal" => "4",
714-
"partial_last" => "true"
723+
partial_message_key => "true",
724+
partial_id_key => "partial2",
725+
partial_ordinal_key => "4",
726+
partial_last_key => "true"
715727
},
716728
]
717729
filtered = filter(config, messages, wait: 3)
@@ -722,76 +734,88 @@ def filter_with_time(conf, messages, wait: nil)
722734
assert_equal(expected, filtered)
723735
end
724736

725-
test "mixed" do
737+
data("docker-fluentd format" => ["docker-fluentd",
738+
"partial_message", "partial_id",
739+
"partial_ordinal", "partial_last"],
740+
"docker-journald format" => ["docker-journald",
741+
"CONTAINER_PARTIAL_MESSAGE", "CONTAINER_PARTIAL_ID",
742+
"CONTAINER_PARTIAL_ORDINAL", "CONTAINER_PARTIAL_LAST"],
743+
"docker-journald-lowercase format" => ["docker-journald-lowercase",
744+
"container_partial_message", "container_partial_id",
745+
"container_partial_ordinal", "container_partial_last"],
746+
)
747+
test "mixed" do |data|
748+
partial_metadata_format, partial_message_key, partial_id_key, partial_ordinal_key, partial_last_key = data
726749
config = <<-CONFIG
727750
key message
728751
use_partial_metadata true
752+
partial_metadata_format #{partial_metadata_format}
729753
CONFIG
730754
messages = [
731755
{
732756
"container_id" => "1",
733757
"message" => "start",
734-
"partial_message" => "true",
735-
"partial_id" => "partial1",
736-
"partial_ordinal" => "1",
737-
"partial_last" => "false"
758+
partial_message_key => "true",
759+
partial_id_key => "partial1",
760+
partial_ordinal_key => "1",
761+
partial_last_key => "false"
738762
},
739763
{
740764
"container_id" => "1",
741765
"message" => " message 1",
742-
"partial_message" => "true",
743-
"partial_id" => "partial1",
744-
"partial_ordinal" => "2",
745-
"partial_last" => "false"
766+
partial_message_key => "true",
767+
partial_id_key => "partial1",
768+
partial_ordinal_key => "2",
769+
partial_last_key => "false"
746770
},
747771
{
748772
"container_id" => "1",
749773
"message" => " message 2",
750-
"partial_message" => "true",
751-
"partial_id" => "partial1",
752-
"partial_ordinal" => "3",
753-
"partial_last" => "false"
774+
partial_message_key => "true",
775+
partial_id_key => "partial1",
776+
partial_ordinal_key => "3",
777+
partial_last_key => "false"
754778
},
755779
{
756780
"container_id" => "1",
757781
"message" => "end",
758-
"partial_message" => "true",
759-
"partial_id" => "partial1",
760-
"partial_ordinal" => "4",
761-
"partial_last" => "true"
782+
partial_message_key => "true",
783+
partial_id_key => "partial1",
784+
partial_ordinal_key => "4",
785+
partial_last_key => "true"
762786
},
763787
{ "container_id" => "1", "message" => "single line" },
764788
{
765789
"container_id" => "1",
766790
"message" => "start",
767-
"partial_message" => "true",
768-
"partial_id" => "partial2",
769-
"partial_ordinal" => "1",
770-
"partial_last" => "false"
791+
partial_message_key => "true",
792+
partial_id_key => "partial2",
793+
partial_ordinal_key => "1",
794+
partial_last_key => "false"
771795
},
772796
{
773797
"container_id" => "1",
774798
"message" => " message 3",
775-
"partial_message" => "true",
776-
"partial_id" => "partial2",
777-
"partial_ordinal" => "2",
778-
"partial_last" => "false"
799+
partial_message_key => "true",
800+
partial_id_key => "partial2",
801+
partial_ordinal_key => "2",
802+
partial_last_key => "false"
779803
},
780804
{
781805
"container_id" => "1",
782806
"message" => " message 4",
783-
"partial_message" => "true",
784-
"partial_id" => "partial2",
785-
"partial_ordinal" => "3",
786-
"partial_last" => "false"
807+
partial_message_key => "true",
808+
partial_id_key => "partial2",
809+
partial_ordinal_key => "3",
810+
partial_last_key => "false"
787811
},
788812
{
789813
"container_id" => "1",
790814
"message" => "end",
791-
"partial_message" => "true",
792-
"partial_id" => "partial2",
793-
"partial_ordinal" => "4",
794-
"partial_last" => "true"
815+
partial_message_key => "true",
816+
partial_id_key => "partial2",
817+
partial_ordinal_key => "4",
818+
partial_last_key => "true"
795819
},
796820
]
797821
filtered = filter(config, messages, wait: 3)
@@ -803,76 +827,88 @@ def filter_with_time(conf, messages, wait: nil)
803827
assert_equal(expected, filtered)
804828
end
805829

806-
test "unsorted" do
830+
data("docker-fluentd format" => ["docker-fluentd",
831+
"partial_message", "partial_id",
832+
"partial_ordinal", "partial_last"],
833+
"docker-journald format" => ["docker-journald",
834+
"CONTAINER_PARTIAL_MESSAGE", "CONTAINER_PARTIAL_ID",
835+
"CONTAINER_PARTIAL_ORDINAL", "CONTAINER_PARTIAL_LAST"],
836+
"docker-journald-lowercase format" => ["docker-journald-lowercase",
837+
"container_partial_message", "container_partial_id",
838+
"container_partial_ordinal", "container_partial_last"],
839+
)
840+
test "unsorted" do |data|
841+
partial_metadata_format, partial_message_key, partial_id_key, partial_ordinal_key, partial_last_key = data
807842
config = <<-CONFIG
808843
key message
809844
use_partial_metadata true
845+
partial_metadata_format #{partial_metadata_format}
810846
CONFIG
811847
messages = [
812848
{
813849
"container_id" => "1",
814850
"message" => "start",
815-
"partial_message" => "true",
816-
"partial_id" => "partial1",
817-
"partial_ordinal" => "1",
818-
"partial_last" => "false"
851+
partial_message_key => "true",
852+
partial_id_key => "partial1",
853+
partial_ordinal_key => "1",
854+
partial_last_key => "false"
819855
},
820856
{
821857
"container_id" => "1",
822858
"message" => " message 2",
823-
"partial_message" => "true",
824-
"partial_id" => "partial1",
825-
"partial_ordinal" => "3",
826-
"partial_last" => "false"
859+
partial_message_key => "true",
860+
partial_id_key => "partial1",
861+
partial_ordinal_key => "3",
862+
partial_last_key => "false"
827863
},
828864
{
829865
"container_id" => "1",
830866
"message" => " message 1",
831-
"partial_message" => "true",
832-
"partial_id" => "partial1",
833-
"partial_ordinal" => "2",
834-
"partial_last" => "false"
867+
partial_message_key => "true",
868+
partial_id_key => "partial1",
869+
partial_ordinal_key => "2",
870+
partial_last_key => "false"
835871
},
836872
{
837873
"container_id" => "1",
838874
"message" => "end",
839-
"partial_message" => "true",
840-
"partial_id" => "partial1",
841-
"partial_ordinal" => "4",
842-
"partial_last" => "true"
875+
partial_message_key => "true",
876+
partial_id_key => "partial1",
877+
partial_ordinal_key => "4",
878+
partial_last_key => "true"
843879
},
844880
{ "container_id" => "1", "message" => "single line" },
845881
{
846882
"container_id" => "1",
847883
"message" => "start",
848-
"partial_message" => "true",
849-
"partial_id" => "partial2",
850-
"partial_ordinal" => "1",
851-
"partial_last" => "false"
884+
partial_message_key => "true",
885+
partial_id_key => "partial2",
886+
partial_ordinal_key => "1",
887+
partial_last_key => "false"
852888
},
853889
{
854890
"container_id" => "1",
855891
"message" => " message 4",
856-
"partial_message" => "true",
857-
"partial_id" => "partial2",
858-
"partial_ordinal" => "3",
859-
"partial_last" => "false"
892+
partial_message_key => "true",
893+
partial_id_key => "partial2",
894+
partial_ordinal_key => "3",
895+
partial_last_key => "false"
860896
},
861897
{
862898
"container_id" => "1",
863899
"message" => " message 3",
864-
"partial_message" => "true",
865-
"partial_id" => "partial2",
866-
"partial_ordinal" => "2",
867-
"partial_last" => "false"
900+
partial_message_key => "true",
901+
partial_id_key => "partial2",
902+
partial_ordinal_key => "2",
903+
partial_last_key => "false"
868904
},
869905
{
870906
"container_id" => "1",
871907
"message" => "end",
872-
"partial_message" => "true",
873-
"partial_id" => "partial2",
874-
"partial_ordinal" => "4",
875-
"partial_last" => "true"
908+
partial_message_key => "true",
909+
partial_id_key => "partial2",
910+
partial_ordinal_key => "4",
911+
partial_last_key => "true"
876912
},
877913
]
878914
filtered = filter(config, messages, wait: 3)

0 commit comments

Comments
 (0)