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监控工具,如有问题或更好的方法,欢迎分享和交流。

相关推荐
dd聊技术8 分钟前
Prompt 从代码常量搬进数据库:改一句话,不用再发一次版
java·后端
9命怪猫15 分钟前
关于eBPF的JIT运维需要了解的
后端
9命怪猫21 分钟前
运维eBPF 常用命令清单
后端
1360967572325 分钟前
服务器不能编译怎么办
后端
god_cvz31 分钟前
第三章:1、Tool Calling(工具调用)
后端·ai编程
会编程的吕洞宾38 分钟前
Spring AI 2.0 自校正结构化输出实战:让大模型稳定吐出合格 JSON
java·人工智能·后端·spring
深蓝AI1 小时前
Future.result 超时了,Python 线程却没停:线程池取消任务的三个陷阱
后端
suhan1 小时前
【数据结构】三、栈和队列:6.链队列、双端队列、队列的应用(树的层次遍历、广度优先BFS、先来先服务FCFS)
数据结构·后端·算法
鸿蒙开发1 小时前
我把自己的应用上线了:从买服务器、域名和 DNS,到备案与 HTTPS
后端·github
neoooo1 小时前
🚀Claude Code 小技巧(二):找回会话,撤销修改
前端·人工智能·后端