at master 3.0 kB view raw
1start_all() 2machine.wait_for_unit("ulogd.service") 3machine.systemctl("start network-online.target") 4machine.wait_for_unit("network-online.target") 5 6with subtest("Ulogd is running"): 7 machine.succeed("pgrep ulogd >&2") 8 9# All packets show up twice in the logs 10with subtest("Logs are collected"): 11 machine.succeed("ping -f 127.0.0.1 -c 5 >&2") 12 machine.succeed("sleep 2") 13 machine.wait_until_succeeds("du /var/log/ulogd.pcap") 14 _, echo_request_packets = machine.execute("tcpdump -r /var/log/ulogd.pcap icmp[0] == 8 and host 127.0.0.1") 15 expected, actual = 5 * 2, len(echo_request_packets.splitlines()) 16 assert expected == actual, f"Expected {expected} ICMP request packets from pcap, got: {actual}" 17 _, echo_reply_packets = machine.execute("tcpdump -r /var/log/ulogd.pcap icmp[0] == 0 and host 127.0.0.1") 18 expected, actual = 5 * 2, len(echo_reply_packets.splitlines()) 19 assert expected == actual, f"Expected {expected} ICMP reply packets from pcap, got: {actual}" 20 21 machine.wait_until_succeeds("du /var/log/ulogd_pkts.log") 22 _, echo_request_packets = machine.execute("grep TYPE=8 /var/log/ulogd_pkts.log") 23 expected, actual = 5 * 2, len(echo_request_packets.splitlines()) 24 assert expected == actual, f"Expected {expected} ICMP request packets from logfile, got: {actual}" 25 _, echo_reply_packets = machine.execute("grep TYPE=0 /var/log/ulogd_pkts.log") 26 expected, actual = 5 * 2, len(echo_reply_packets.splitlines()) 27 assert expected == actual, f"Expected {expected} ICMP reply packets from logfile, got: {actual}" 28 29with subtest("Reloading service reopens log file"): 30 machine.succeed("mv /var/log/ulogd.pcap /var/log/old_ulogd.pcap") 31 machine.succeed("mv /var/log/ulogd_pkts.log /var/log/old_ulogd_pkts.log") 32 machine.succeed("systemctl reload ulogd.service") 33 machine.succeed("ping -f 127.0.0.1 -c 5 >&2") 34 machine.succeed("sleep 2") 35 machine.wait_until_succeeds("du /var/log/ulogd.pcap") 36 _, echo_request_packets = machine.execute("tcpdump -r /var/log/ulogd.pcap icmp[0] == 8 and host 127.0.0.1") 37 expected, actual = 5 * 2, len(echo_request_packets.splitlines()) 38 assert expected == actual, f"Expected {expected} packets, got: {actual}" 39 _, echo_reply_packets = machine.execute("tcpdump -r /var/log/ulogd.pcap icmp[0] == 0 and host 127.0.0.1") 40 expected, actual = 5 * 2, len(echo_reply_packets.splitlines()) 41 assert expected == actual, f"Expected {expected} packets, got: {actual}" 42 43 machine.wait_until_succeeds("du /var/log/ulogd_pkts.log") 44 _, echo_request_packets = machine.execute("grep TYPE=8 /var/log/ulogd_pkts.log") 45 expected, actual = 5 * 2, len(echo_request_packets.splitlines()) 46 assert expected == actual, f"Expected {expected} ICMP request packets from logfile, got: {actual}" 47 _, echo_reply_packets = machine.execute("grep TYPE=0 /var/log/ulogd_pkts.log") 48 expected, actual = 5 * 2, len(echo_reply_packets.splitlines()) 49 assert expected == actual, f"Expected {expected} ICMP reply packets from logfile, got: {actual}"