2.调试kafka源码

1.调试core包

1.日志文件配置

拷贝config/log4j.properties文件到core/src/main/scala下,便于观察日志

在这里插入图片描述
修改log4j.properties文件

# 此处将info改成了debug

log4j.rootLogger=debug, stdout, kafkaAppender

2.修改config/server.properties文件

broker.id=0
#delete.topic.enable=true
#listeners=PLAINTEXT://:9092
num.network.threads=3
num.io.threads=8
socket.send.buffer.bytes=102400
socket.receive.buffer.bytes=102400
socket.request.max.bytes=104857600
log.dirs=/tmp/kafka-logs
num.partitions=1
offsets.topic.replication.factor=1
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1
#log.flush.interval.messages=10000
#log.flush.interval.ms=1000
log.retention.hours=168
#log.retention.bytes=1073741824
log.segment.bytes=1073741824
log.retention.check.interval.ms=300000
zookeeper.connect=localhost:2181
zookeeper.connection.timeout.ms=6000
group.initial.rebalance.delay.ms=0

这里修改如下文件

1. log.dirs=F:\\resources\\kafka\\logs
2. zookeeper.connect=localhost:2181
# 如果不是本机安装zookeeper,则localhost替换成zookeeper地址
3. zookeeper.connection.timeout.ms=60000
# 增加了zookeeper连接超时时间

配置文件尽可能使用主机名,不使用ip

3.调试配置

  1. idea点击Run–Edit Configurations,点击+ 号,选择Application
    在这里插入图片描述
    编辑名称为kafka
    在这里插入图片描述
    在这里插入图片描述

  2. 配置运行主类
    在这里插入图片描述
    或者搜索kafka
    在这里插入图片描述

  3. 配置参数config/server.properties
    在这里插入图片描述
    总配置如下:
    在这里插入图片描述

  4. 编码格式设置
    在这里插入图片描述
    在这里插入图片描述

4.启动

idea出现了刚刚配置的kafka,点击debug图标
在这里插入图片描述

报错

Execution failed for task ':core:Kafka.main()'.
> Process 'command 'E:/setupall/java8/bin/java.exe'' finished with non-zero exit value 1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
Unable to connect to zookeeper server 'ip:2281' with timeout of 60000 ms

5.访问规则设置

ip为阿里云的服务器公网ip,进入阿里云控制台修改访问规则

在这里插入图片描述
在这里插入图片描述
点击配置规则
在这里插入图片描述
勾选需要添加的端口范围,如全部,点击确定
在这里插入图片描述

6.再次启动

在这里插入图片描述
在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 请注意,该命令将会永久性地删除名为"kafka"的目录及其所有子目录和文件。如果您确定要执行此操作,请确保已备份所有重要数据,并以管理员权限运行该命令。命令如下: ``` sudo rm -r ./kafka ``` ### 回答2: sudo rm -r ./kafka 是一个Linux命令,用于删除当前目录下的kafka文件夹及其所有内容。sudo是用于提升当前用户权限的命令,rm表示删除,-r表示递归删除,./kafka表示当前目录下的kafka文件夹。 当我们执行这个命令时,系统会提示我们输入管理员密码,以确认我们有权限进行删除操作。输入密码后,系统会自动删除kafka文件夹及其所有内容,包括子文件夹和文件。 需要注意的是,使用该命令要谨慎,因为删除操作是不可逆的。一旦删除,数据将无法恢复。因此,在执行该命令之前,我们应该仔细确认是否需要删除kafka文件夹及其内容,以免误删重要文件。 如果确实需要删除kafka文件夹,可以使用该命令。但在执行之前,最好备份重要数据,以免造成不可挽回的损失。 ### 回答3: sudo rm -r ./kafka 是一个Linux命令,用于删除名为"kafka"的文件夹以及其所有内容。 "sudo"是一个表示超级用户(root用户)权限的命令,在执行命令时,需要输入管理员密码。 "rm"是一个用于删除文件或目录的命令。 "-r"是一个选项,代表递归删除,即删除目录及其下所有内容。 "./kafka"表示当前目录下的名为"kafka"的文件夹。 所以,"sudo rm -r ./kafka"用于以管理员权限删除当前目录下的"kafka"文件夹及其所有内容。 执行该命令前,请务必确保你了解删除的对象是正确的,并且备份重要文件,因为删除后无法恢复。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值