oblogproxy转化clog为空

【 使用环境 】生产环境
【 OB or 其他组件 】oblogproxy
【 使用版本 】oblogproxy-2.0.2
【问题描述】 onlogproxy 安装初始化完成之后,启动也正常,但是在查询 SHOW BINLOG STATUS; 发现binlog 为null ,


– 如下是 配置文件,
{
“service_port”: 2983,
“encode_threadpool_size”: 8,
“encode_queue_size”: 20000,
“max_packet_bytes”: 67108864,
“record_queue_size”: 20000,
“read_timeout_us”: 2000000,
“read_fail_interval_us”: 1000000,
“read_wait_num”: 20000,
“send_timeout_us”: 2000000,
“send_fail_interval_us”: 1000000,
“check_quota_enable”: false,
“check_clog_enable”: true,
“command_timeout_s”: 10,
“log_quota_size_mb”: 5120,
“log_quota_day”: 7,
“log_gc_interval_s”: 43200,
“log_level”: 2,
“log_flush_strategy”: 1,
“log_flush_level”: 2,
“log_flush_period_s”: 1,
“log_max_file_size_mb”: 1024,
“log_retention_h”: 360,
“oblogreader_path_retain_hour”: 168,
“oblogreader_lease_s”: 300,
“oblogreader_path”: “/usr/local/oblogproxy/run”,
“bin_path”: “/usr/local/oblogproxy/bin”,
“oblogreader_obcdc_ce_path_template”: “/usr/local/oblogproxy/obcdc/obcdc-ce-%d.x-access/libobcdc.so”,
“allow_all_tenant”: true,
“auth_user”: true,
“auth_use_rs”: false,
“auth_allow_sys_user”: true,
“ob_sys_username”: “CFBF5360D0D8B09534FB1C26AE2D7BD7”,
“ob_sys_password”: “8D5A6E8A4C8D1B01325F4FCC237E06C7”,
“counter_interval_s”: 2,
“metric_enable”: true,
“metric_interval_s”: 10,
“debug”: false,
“verbose”: false,
“verbose_packet”: false,
“verbose_record_read”: false,
“readonly”: false,
“count_record”: false,
“channel_type”: “plain”,
“tls_ca_cert_file”: “”,
“tls_cert_file”: “”,
“tls_key_file”: “”,
“tls_verify_peer”: true,
“liboblog_tls”: false,
“liboblog_tls_cert_path”: “”,
“binlog_log_bin_basename”: “/usr/local/oblogproxy/run”,
“binlog_obcdc_ce_path_template”: “/usr/local/oblogproxy/obcdc/obcdc-ce-%d.x-access/libobcdc.so”,
“binlog_ignore_unsupported_event”: true,
“binlog_max_event_buffer_bytes”: 67108864,
“binlog_mode”: true,
“table_whitelist”: “”,
“binlog_nof_work_threads”: 16,
“binlog_bc_work_threads”: 2,
“binlog_max_file_size_bytes”: 524288000,
“binlog_convert_timeout_us”: 10000,
“binlog_checksum”: true,
“binlog_heartbeat_interval_us”: 1000000,
“binlog_gtid_display”: true,
“binlog_ddl_convert”: true,
“binlog_memory_limit”: “3G”,
“binlog_working_mode”: “storage”,
“binlog_recover_backup”: true,
“wait_rotate_ready_max_try”: 1000
}

完整日志提供下呢。

logproxy (1).log (1.9 MB)
oblogproxy 日志

我添加了另外一个集群的租户,oblogproxy 运行正常,binlog也有值。这两个集群用的都是同一个obproxy,只是observer 版本有差异, 不知道跟这个有关系没?
CE: obs-4.2.1.2-102000042023120514 obproxy-4.2.1.0-11
VM: obs-4.2.2.1-101000012024030709 obproxy-4.2.1.0-11

是从CE: obs-4.2.1.2-102000042023120514 obproxy-4.2.1.0-11更换的VM: obs-4.2.2.1-101000012024030709 obproxy-4.2.1.0-11版本嘛?

不是,这两个集群都接入了 oblogproxy 。

去 /usr/local/oblogproxy/run/{cluster}/{tenant}/ 目录下,看一下 对应的 binlog_convert.log 日志

[root@nd-ob-master03 log]# more binlog_converter.log
[2024-06-18 10:02:51] [info] binlog_converter_entry.cpp(56): Init fork binlog thread: cluster=catl_cloudDB_ce cluster_id= cluster_password=Yqqlm__G31cl cluster_url= http://
172.18.46.52:8080/services?Action=ObRootServiceInfo&User_ID=alibaba&UID=ocpmaster&ObRegion=catl_cloudDB_ce cluster_user=root first_start_timestamp=0 first_start_timestamp_u
s=0 id= initial_trx_gtid_seq=1 initial_trx_seeking_abort_timestamp=0 initial_trx_xid= ob_version= rootserver_list= server_uuid= sys_password= sys_user= tb_white_list=ZABBIX
.. tenant=ZABBIX enable_convert_timestamp_to_unix_timestamp=1 enable_filter_sys_tenant=1 enable_output_by_table_def=1 enable_output_trans_order_by_sql_operation=1 log_bin
_prefix=/usr/local/oblogproxy/run/catl_cloudDB_ce/ZABBIX memory_limit=3G sort_trans_participants=1 worker_path=/usr/local/oblogproxy/run/catl_cloudDB_ce/ZABBIX working_mode
=storage [first_start_timestamp: 0]
[2024-06-18 10:02:51] [info] binlog_converter.cpp(27): config:cluster=catl_cloudDB_ce cluster_id= cluster_password=Yqqlm__G31cl cluster_url= http://172.18.46.52:8080/servic
es?Action=ObRootServiceInfo&User_ID=alibaba&UID=ocpmaster&ObRegion=catl_cloudDB_ce cluster_user=root first_start_timestamp=0 first_start_timestamp_us=0 id= initial_trx_gtid
_seq=1 initial_trx_seeking_abort_timestamp=0 initial_trx_xid= ob_version= rootserver_list= server_uuid= sys_password= sys_user= tb_white_list=ZABBIX.. tenant=ZABBIX enabl
e_convert_timestamp_to_unix_timestamp=1 enable_filter_sys_tenant=1 enable_output_by_table_def=1 enable_output_trans_order_by_sql_operation=1 log_bin_prefix=/usr/local/oblog
proxy/run/catl_cloudDB_ce/ZABBIX memory_limit=3G sort_trans_participants=1 worker_path=/usr/local/oblogproxy/run/catl_cloudDB_ce/ZABBIX working_mode=storage
[2024-06-18 10:02:51] [error] http.cpp(84): Failed to http GET, failed to parse url: http://172.18.46.52:8080/services?Action=ObRootServiceInfo&User_ID=alibaba&UID=ocpmaste
r&ObRegion=catl_cloudDB_ce
[2024-06-18 10:02:51] [error] ob_access.cpp(32): Failed to request cluster url: http://172.18.46.52:8080/services?Action=ObRootServiceInfo&User_ID=alibaba&UID=ocpmaster&ObR
egion=catl_cloudDB_ce
[2024-06-18 10:02:51] [error] binlog_converter_entry.cpp(66): !!! Exit binlog converter process with pid: 44249
[2024-06-18 10:02:51] [warning] thread.cpp(37): The current thread :(44252) has already stopped
[2024-06-18 10:02:51] [warning] thread.cpp(37): The current thread :(44252) has already stopped
[root@nd-ob-master03 log]# pwd
/usr/local/oblogproxy/run/catl_cloudDB_ce/ZABBIX/log

看日志是 Failed to http GET 出问题了,使用curl -s ‘’ 是正常的。见上图

[2024-06-18 10:02:51] [error] http.cpp(84): Failed to http GET, failed to parse url: http://172.18.46.52:8080/services?Action=ObRootServiceInfo&User_ID=alibaba&UID=ocpmaste
r&ObRegion=catl_cloudDB_ce
[2024-06-18 10:02:51] [error] ob_access.cpp(32): Failed to request cluster url: http://172.18.46.52:8080/services?Action=ObRootServiceInfo&User_ID=alibaba&UID=ocpmaster&ObR
egion=catl_cloudDB_ce

这个我手动curl -s ‘’ 都正常,系统调用失败了,这个是啥问题? BUG 嘛?

你试看下两个集群的 cluster_url 信息有什么区别。