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

相关推荐
IT_陈寒3 分钟前
Vite项目build后路由404了?你可能漏了这个小配置
前端·人工智能·后端
宸津-代码粉碎机36 分钟前
Spring AI企业级实战|从RAG优化到Agent多工具调度
java·大数据·人工智能·后端·python·spring
吴佳浩39 分钟前
AI Infra 的真相:Go 没输,rust也不是取代
后端·rust·go
喵个咪1 小时前
实时游戏网络协议深度对比:KCP vs WebRTC vs WebSocket
后端·websocket·webrtc
普通网友1 小时前
springboot之集成Elasticsearch
spring boot·后端·elasticsearch
QuZero1 小时前
Guava Cache Deep Dive
java·后端·算法·guava
leeyi2 小时前
SSE 实时推流 —— Token 怎么一个个蹦出来
后端·agent
leeyi2 小时前
ReAct 循环的 50 行 Go 实现,逐行拆解
后端·agent
leeyi2 小时前
HITL:让人类随时叫停 AI,并且能优雅地继续
后端·agent
用户34232323763172 小时前
采集网关的离线缓存与断点续传——当网络不可靠时,数据一条都不能丢
后端