mac 本地连接cat配置

这篇文章简单介绍了如何在Mac本地配置并使用CAT监控工具。

针对Mac系统的只读目录限制,提供了一种替代方案,使CAT能够正常读取本地配置文件。本文将详细说明配置步骤,包括创建XML配置文件、设置环境变量以及在IDEA中添加虚机配置,以确保CAT能够正确加载自定义目录下的配置文件。

Cat 使用本地配置官方方法

CAT项目地址:dianping/cat

根据官网介绍,想让项目能够接入CAT,使用CAT打点,需要在项目所在的服务器进行一下配置。

  1. 进入服务器/data/appdatas/cat路径下,没有就创建路径
  2. 创建client.xml文件,文件内容如下:
xml 复制代码
    <?xml version="1.0" encoding="utf-8"?>
     
    <config mode="client" xmlns:xsi="http://www.w3.org/2001/XMLSchema" xsi:noNamespaceSchemaLocation="config.xsd">
            <servers>
                     <server ip="ip1" port="2280" http-port="8080" />
                     <server ip="ip2" port="2280" http-port="8080" />
            </servers>
    </config>

其中把ip换成部署CAT的机器。

如果想要在自己电脑使用CAT打点,就需要在本地环境进行如上配置。然后对于Mac电脑来说,/data/是一个只读目录,管理员权限也不能进行操作。

如图:mac 的sudo权限也不能创建目录

提醒:不要试图绕过这个权限限制,我浪费了一个小时,不想让你们也浪费时间。当然,要是有绕过权限的方法,欢迎分享。

Mac 本地连接CAT配置方法

为了绕过这个设置,在老大哥的提醒下,我换了个思路。

我们需要在其他位置创建xml配置文件,然后让CAT去读我们自定义目录的配置文件。操作方法如下:

1. 自己找个位置创建client.xml文件

我这里选择的是/opt/data/appdatas/cat,如下图所示。

为了能够让CAT程序能够读到自定义的配置文件,我们首先需要创建一个环境变量,然后将原来的目录映射到我们自定义的目录上。

2. 配置环境变量

/etc/profile是只读文件,记得用sudo权限。

js 复制代码
sudo vi /etc/profile

增加个环境变量:

ini 复制代码
export CAT_HOME = "/opt/data/appdatas/cat"

如图:环境变量已经设置成功。

3. IDEA增加虚机配置

这一步的作用是每次执行项目时,都会将CAT_HOME映射到我们定义的环境变量中,从而将CAT的目录映射到我们自定义的目录中。操作如下:

  1. 打开VM配置文件

  2. 增加CAT_HOME配置

ini 复制代码
-DCAT_HOME=$CAT_HOME

最后记得,IDEA重启使配置生效。

4. CAT验证

为了确保CAT配置成功,可以在CAT加载配置的源码位置打一个断点,验证CAT是否能正确加载配置文件.

如下图:在CAT加载配置的源码位置打了个断点,可以看到变量确实已经生效,CAT就能正常加载我们的配置文件了。

总结

通过以上步骤,我们成功绕过了Mac系统的目录限制,配置了CAT监控工具。本地环境下的CAT配置不仅能够保证项目的监控打点功能正常运行,还能灵活应对其他系统的权限限制。希望这篇指南能帮助你顺利配置和使用CAT监控工具,如有问题或更好的方法,欢迎分享和交流。

相关推荐
XuCoder20 分钟前
零成本从0到1搭建个人博客
后端
雨夜之寂30 分钟前
大模型 ai coding 比较
后端·面试
RoyLin1 小时前
Rust 编写的 40MB 大小 MicroVM 运行时,完美替代 Docker 作为 AI Agent Sandbox
后端·架构·rust
风象南3 小时前
无文档遗留系统的逆向梳理:利用 AI 重建架构视图
后端
金銀銅鐵3 小时前
浅解 Junit 4 第六篇:AnnotatedBuilder 和 RunnerBuilder
后端·junit·单元测试
钟智强3 小时前
Erlang 从零写一个 HTTP REST API 服务
后端
王德印4 小时前
工作踩坑之导入数据库报错:Got a packet bigger than ‘max_allowed_packet‘ bytes
java·数据库·后端·mysql·云原生·运维开发
Cache技术分享4 小时前
327. Java Stream API - 实现 joining() 收集器:从简单到进阶
前端·后端
颜酱4 小时前
滑动窗口算法通关指南:从模板到实战,搞定LeetCode高频题
javascript·后端·算法
重生之后端学习4 小时前
994. 腐烂的橘子
java·开发语言·数据结构·后端·算法·深度优先