@@ -31,18 +31,22 @@ void SignalHandler(int signum) {
31
31
int main (int argc, char ** argv) {
32
32
if (argc < 3 ) {
33
33
std::cout << " usage: " << argv[0 ] << std::endl
34
- << " service_namespace service_name label1<key:value> label2<key:value> qps" << std::endl
34
+ << " service_namespace service_name <method> label1<key:value> label2<key:value> qps" << std::endl
35
35
<< " example: " << argv[0 ] << std::endl
36
36
<< " Test service_name labelK1:labelV1 100" << std::endl;
37
37
return -1 ;
38
38
}
39
39
std::string service_namespace = argv[1 ];
40
40
std::string service_name = argv[2 ];
41
+ std::string method;
41
42
std::map<std::string, std::string> labels;
42
- for (int i = 3 ; i < argc - 1 ; ++i) {
43
- std::string kv = argv[i];
44
- std::size_t pos = kv.find (' :' );
45
- labels.insert (std::make_pair (kv.substr (0 , pos), kv.substr (pos + 1 )));
43
+ if (argc > 3 ) {
44
+ method = argv[3 ];
45
+ for (int i = 4 ; i < argc - 1 ; ++i) {
46
+ std::string kv = argv[i];
47
+ std::size_t pos = kv.find (' :' );
48
+ labels.insert (std::make_pair (kv.substr (0 , pos), kv.substr (pos + 1 )));
49
+ }
46
50
}
47
51
int qps = atoi (argv[argc - 1 ]);
48
52
int interval = 1000 * 1000 / qps; // 根据传入qps计算每个请求耗时
@@ -60,6 +64,7 @@ int main(int argc, char** argv) {
60
64
polaris::QuotaRequest quota_request; // 限流请求
61
65
quota_request.SetServiceNamespace (service_namespace); // 设置限流规则对应服务的命名空间
62
66
quota_request.SetServiceName (service_name); // 设置限流规则对应的服务名
67
+ quota_request.SetMethod (method); // 设置限流规则对应的接口名
63
68
quota_request.SetLabels (labels); // 设置label用于匹配限流规则
64
69
65
70
// 调用接口
0 commit comments