7575 local client_count=$2
7676 local log_file="${file_prefix}_${client_count}.log"
7777
78- if [ -f "$log_file" ] && grep -q "${file_prefix#*_} cost:" "$log_file"; then
79- local time=$(grep "${file_prefix#*_} cost:" "$log_file" | awk '{print $5}')
80- local ops=$(grep "${file_prefix#*_} ops/s:" "$log_file" | awk '{print $5}')
78+ if [ -f "$log_file" ]; then
79+ # 提取时间 (cost)
80+ local time_line=$(grep "\] ${file_prefix#*_} cost:" "$log_file" | head -1)
81+ local time="-"
82+ if [ -n "$time_line" ]; then
83+ # 处理不同的格式:xxxms 或 xxx
84+ time=$(echo "$time_line" | awk '{print $NF}' | sed 's/ms$//' | sed 's/[^0-9\-]*//g')
85+ fi
86+
87+ # 提取OPS
88+ local ops_line=$(grep "\] ${file_prefix#*_} ops/s:" "$log_file" | head -1)
89+ local ops="-"
90+ if [ -n "$ops_line" ]; then
91+ ops=$(echo "$ops_line" | awk '{print $NF}' | sed 's/[^0-9\-]*//g')
92+ fi
93+
8194 echo "$time/$ops"
8295 else
8396 echo "-/-"
@@ -98,10 +111,33 @@ jobs:
98111 echo "|------------|------------------------|-----------------------|" >> benchmark-report.md
99112
100113 for client_count in 1 8 128 1024; do
101- redisun_data=$(extract_data "redisun_${test_type}" "$client_count")
102- redisson_data=$(extract_data "redisson_${test_type}" "$client_count")
103- jedis_data=$(extract_data "jedis_${test_type}" "$client_count")
104- lettuce_data=$(extract_data "lettuce_${test_type}" "$client_count")
114+ # 修正文件前缀以匹配实际的日志文件名
115+ case "${test_type}" in
116+ "concurrent_set")
117+ redisun_data=$(extract_data "redisun_concurrentSet" "$client_count")
118+ redisson_data=$(extract_data "redisson_concurrentSet" "$client_count")
119+ jedis_data=$(extract_data "jedis_concurrentSet" "$client_count")
120+ lettuce_data=$(extract_data "lettuce_concurrentSet" "$client_count")
121+ ;;
122+ "async_set")
123+ redisun_data=$(extract_data "redisun_asyncSet" "$client_count")
124+ redisson_data=$(extract_data "redisson_asyncSet" "$client_count")
125+ jedis_data=$(extract_data "jedis_asyncSet" "$client_count")
126+ lettuce_data=$(extract_data "lettuce_asyncSet" "$client_count")
127+ ;;
128+ "concurrent_get")
129+ redisun_data=$(extract_data "redisun_concurrentGet" "$client_count")
130+ redisson_data=$(extract_data "redisson_concurrentGet" "$client_count")
131+ jedis_data=$(extract_data "jedis_concurrentGet" "$client_count")
132+ lettuce_data=$(extract_data "lettuce_concurrentGet" "$client_count")
133+ ;;
134+ "async_get")
135+ redisun_data=$(extract_data "redisun_asyncGet" "$client_count")
136+ redisson_data=$(extract_data "redisson_asyncGet" "$client_count")
137+ jedis_data=$(extract_data "jedis_asyncGet" "$client_count")
138+ lettuce_data=$(extract_data "lettuce_asyncGet" "$client_count")
139+ ;;
140+ esac
105141
106142 redisun_time=$(echo $redisun_data | cut -d'/' -f1)
107143 redisun_ops=$(echo $redisun_data | cut -d'/' -f2)
0 commit comments