Starter.java 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. package com.jd.platform.jlog.clientdemo.custom;
  2. import com.jd.platform.jlog.client.TracerClientStarter;
  3. import com.jd.platform.jlog.client.filter.HttpFilter;
  4. import com.jd.platform.jlog.common.constant.SendMode;
  5. import com.jd.platform.jlog.common.handler.TagConfig;
  6. import org.slf4j.Logger;
  7. import org.slf4j.LoggerFactory;
  8. import org.springframework.boot.context.properties.ConfigurationProperties;
  9. import org.springframework.boot.web.servlet.FilterRegistrationBean;
  10. import org.springframework.context.annotation.Bean;
  11. import org.springframework.stereotype.Component;
  12. import javax.annotation.PostConstruct;
  13. /**
  14. * 启动器 获取配置完成装配和client启动
  15. * @author shenkaiwen5
  16. * @version 1.0
  17. * @date 2021-12-27
  18. */
  19. @Component
  20. @ConfigurationProperties()
  21. public class Starter {
  22. private Logger logger = LoggerFactory.getLogger(getClass());
  23. private TagConfig tagConfig ;
  24. //通讯方式(单播、多播),默认是单播
  25. private static SendMode sendMode=new SendMode();
  26. public void setSendMode(SendMode sendMode) {
  27. this.sendMode = sendMode;
  28. }
  29. public SendMode getSendMode() {
  30. return sendMode;
  31. }
  32. public TagConfig getTagConfig() {
  33. return tagConfig;
  34. }
  35. public void setTagConfig(TagConfig tagConfig) {
  36. this.tagConfig = tagConfig;
  37. }
  38. @PostConstruct
  39. public void begin() throws Exception {
  40. TracerClientStarter tracerClientStarter = new TracerClientStarter.Builder()
  41. .setAppName("demo")
  42. .setTagConfig(tagConfig)
  43. .setSendMode(sendMode)
  44. .build();
  45. logger.info("初始化tagConfig: {}",tagConfig);
  46. tracerClientStarter.startPipeline();
  47. }
  48. @Bean
  49. public FilterRegistrationBean urlFilter() {
  50. FilterRegistrationBean registration = new FilterRegistrationBean();
  51. HttpFilter userFilter = new HttpFilter();
  52. registration.setFilter(userFilter);
  53. registration.addUrlPatterns("/*");
  54. registration.setName("UserTraceFilter");
  55. registration.setOrder(1);
  56. return registration;
  57. }
  58. }