testperf.config 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. # class #
  2. create class if not exists /test_perf_tsdb (
  3. testhost varchar,
  4. testvalue bucket {
  5. "type": "tsdb",
  6. "param": ["pint1","pint2","pfloat1","pfloat2","pstring1","pstring2"],
  7. "ptype": ["i","i","f","f","s","s"],
  8. "unit": ["ms","ms","%","%","",""],
  9. "precision": [0,0,2,3,0,0],
  10. "ttl": 1
  11. },
  12. keys(testhost),
  13. indexes(testhost)
  14. );
  15. insert into /test_perf_tsdb (testhost) values ('test');
  16. # rule #
  17. ## path ##
  18. /matrix/rules/test/perf/tsdb
  19. ## lua rule ##
  20. --class = /test_perf_tsdb
  21. --parser = csv ,
  22. --fields = ID,TIME,P1,P2,P3,P4,P5,P6
  23. --mqltmpl = insert into /test_perf_tsdb (id, testvalue) values (?, ?) at ?
  24. --mqltmpl_fields = id,testvalue,attime
  25. --ignore = false
  26. _id = ID
  27. _testvalue = {tonumber(P1),tonumber(P2),tonumber(P3),tonumber(P4),P5,P6}
  28. _attime = tonumber(TIME)
  29. ## direct rule ##
  30. --class = /test_perf_tsdb
  31. --parser = csv ,
  32. --fields = ID,TIME,P1,P2,P3,P4,P5,P6
  33. --mqltmpl = insert into /test_perf_tsdb (id, testvalue) values (?, ?) at ?
  34. --mqltmpl_fields = ID,testvalue,attime
  35. --ignore = false
  36. --direct = true
  37. --fields_type = VAR,INT,INT,INT,INT,INT,VAR,VAR
  38. --var_testvalue = array P1,P2,P3,P4,P5,P6
  39. --var_attime = field TIME
  40. # toe #
  41. # log test perf tsdb
  42. [LogTestPerfTsdbInput]
  43. type = "LogstreamerInput"
  44. log_directory = "/opt/matrix/var/test"
  45. file_match = "test_perf_tsdb.csv"
  46. splitter = "split_n"
  47. [LogTestPerfTsdbOutput]
  48. type = "NatsOutput"
  49. is_streaming = true
  50. subject = "matrix.rules.test.perf.tsdb"
  51. reconnect = true
  52. message_matcher = "Logger == 'LogTestPerfTsdbInput'"
  53. encoder = "PayloadEncoder"
  54. use_protocol = true
  55. [LogTestPerfTsdbOutput.attr]