一、日志和监控

RabbitMQ日志存放目录

[root@localhost ~]# ll /var/log/rabbitmq/
总用量 176
-rw-r-----. 1 rabbitmq rabbitmq 177947 10月 10 10:21 rabbit@localhost.log
-rw-r-----. 1 rabbitmq rabbitmq 0 10月 6 11:35 rabbit@localhost_upgrade.log
[root@localhost ~]#

其中  rabbit@localhost.log  是默认日志

就是跑了视频的一些案例,查看下这个日志大小:

[root@localhost ~]# ll -h /var/log/rabbitmq/rabbit@localhost.log
-rw-r-----. 1 rabbitmq rabbitmq 174K 10月 10 10:21 /var/log/rabbitmq/rabbit@localhost.log
[root@localhost ~]#

查看日志:

[root@localhost ~]# cat /var/log/rabbitmq/rabbit@localhost.log

一部分日志信息:

2021-10-10 09:14:29.123085+08:00 [info] <0.1360.0> accepting AMQP connection <0.1360.0> (192.168.2.209:59929 -> 192.168.2.121:5672)
2021-10-10 09:14:29.158177+08:00 [info] <0.1360.0> Connection <0.1360.0> (192.168.2.209:59929 -> 192.168.2.121:5672) has a client-provided name: connectionFactory#1fe41ea:0
2021-10-10 09:14:29.162086+08:00 [info] <0.1360.0> connection <0.1360.0> (192.168.2.209:59929 -> 192.168.2.121:5672 - connectionFactory#1fe41ea:0): user 'test' authenticated and granted access to vhost '/dzz'
2021-10-10 09:14:29.208515+08:00 [erro] <0.1369.0> Channel error on connection <0.1360.0> (192.168.2.209:59929 -> 192.168.2.121:5672, vhost: '/dzz', user: 'test'), channel 1:
2021-10-10 09:14:29.208515+08:00 [erro] <0.1369.0> operation basic.publish caused a channel exception not_found: no exchange 'test-dlx-normal-exchange' in vhost '/dzz'
2021-10-10 09:14:29.226656+08:00 [info] <0.1360.0> closing AMQP connection <0.1360.0> (192.168.2.209:59929 -> 192.168.2.121:5672 - connectionFactory#1fe41ea:0, vhost: '/dzz', user: 'test')
2021-10-10 09:15:33.293469+08:00 [info] <0.1460.0> accepting AMQP connection <0.1460.0> (192.168.2.209:59974 -> 192.168.2.121:5672)
2021-10-10 09:15:33.325804+08:00 [info] <0.1460.0> Connection <0.1460.0> (192.168.2.209:59974 -> 192.168.2.121:5672) has a client-provided name: connectionFactory#1fe41ea:0
2021-10-10 09:15:33.330105+08:00 [info] <0.1460.0> connection <0.1460.0> (192.168.2.209:59974 -> 192.168.2.121:5672 - connectionFactory#1fe41ea:0): user 'test' authenticated and granted access to vhost '/dzz'
2021-10-10 09:15:33.383151+08:00 [info] <0.1460.0> closing AMQP connection <0.1460.0> (192.168.2.209:59974 -> 192.168.2.121:5672 - connectionFactory#1fe41ea:0, vhost: '/dzz', user: 'test')
2021-10-10 09:23:32.352291+08:00 [info] <0.3080.0> accepting AMQP connection <0.3080.0> (192.168.2.209:49457 -> 192.168.2.121:5672)
2021-10-10 09:23:32.390842+08:00 [info] <0.3080.0> Connection <0.3080.0> (192.168.2.209:49457 -> 192.168.2.121:5672) has a client-provided name: connectionFactory#1fe41ea:0
2021-10-10 09:23:32.396644+08:00 [info] <0.3080.0> connection <0.3080.0> (192.168.2.209:49457 -> 192.168.2.121:5672 - connectionFactory#1fe41ea:0): user 'test' authenticated and granted access to vhost '/dzz'
2021-10-10 09:23:32.472165+08:00 [info] <0.3080.0> closing AMQP connection <0.3080.0> (192.168.2.209:49457 -> 192.168.2.121:5672 - connectionFactory#1fe41ea:0, vhost: '/dzz', user: 'test')
2021-10-10 09:28:56.310092+08:00 [info] <0.4273.0> accepting AMQP connection <0.4273.0> (192.168.2.209:63817 -> 192.168.2.121:5672)
2021-10-10 09:28:56.344023+08:00 [info] <0.4273.0> Connection <0.4273.0> (192.168.2.209:63817 -> 192.168.2.121:5672) has a client-provided name: connectionFactory#1fe41ea:0
2021-10-10 09:28:56.349675+08:00 [info] <0.4273.0> connection <0.4273.0> (192.168.2.209:63817 -> 192.168.2.121:5672 - connectionFactory#1fe41ea:0): user 'test' authenticated and granted access to vhost '/dzz'
2021-10-10 09:28:56.402577+08:00 [info] <0.4273.0> closing AMQP connection <0.4273.0> (192.168.2.209:63817 -> 192.168.2.121:5672 - connectionFactory#1fe41ea:0, vhost: '/dzz', user: 'test')
2021-10-10 10:08:57.351330+08:00 [info] <0.6109.0> accepting AMQP connection <0.6109.0> (192.168.2.209:60038 -> 192.168.2.121:5672)
2021-10-10 10:08:57.386253+08:00 [info] <0.6109.0> Connection <0.6109.0> (192.168.2.209:60038 -> 192.168.2.121:5672) has a client-provided name: connectionFactory#1fe41ea:0
2021-10-10 10:08:57.390659+08:00 [info] <0.6109.0> connection <0.6109.0> (192.168.2.209:60038 -> 192.168.2.121:5672 - connectionFactory#1fe41ea:0): user 'test' authenticated and granted access to vhost '/dzz'
2021-10-10 10:08:57.432633+08:00 [erro] <0.6118.0> Channel error on connection <0.6109.0> (192.168.2.209:60038 -> 192.168.2.121:5672, vhost: '/dzz', user: 'test'), channel 1:
2021-10-10 10:08:57.432633+08:00 [erro] <0.6118.0> operation basic.publish caused a channel exception not_found: no exchange 'test-dlx-normal-exchange' in vhost '/dzz'
2021-10-10 10:08:57.448887+08:00 [info] <0.6109.0> closing AMQP connection <0.6109.0> (192.168.2.209:60038 -> 192.168.2.121:5672 - connectionFactory#1fe41ea:0, vhost: '/dzz', user: 'test')
2021-10-10 10:09:07.558078+08:00 [info] <0.6150.0> accepting AMQP connection <0.6150.0> (192.168.2.209:60054 -> 192.168.2.121:5672)
2021-10-10 10:09:07.593389+08:00 [info] <0.6150.0> Connection <0.6150.0> (192.168.2.209:60054 -> 192.168.2.121:5672) has a client-provided name: connectionFactory#1fe41ea:0
2021-10-10 10:09:07.597556+08:00 [info] <0.6150.0> connection <0.6150.0> (192.168.2.209:60054 -> 192.168.2.121:5672 - connectionFactory#1fe41ea:0): user 'test' authenticated and granted access to vhost '/dzz'
2021-10-10 10:09:07.650262+08:00 [info] <0.6150.0> closing AMQP connection <0.6150.0> (192.168.2.209:60054 -> 192.168.2.121:5672 - connectionFactory#1fe41ea:0, vhost: '/dzz', user: 'test')
2021-10-10 10:10:00.327777+08:00 [info] <0.6373.0> accepting AMQP connection <0.6373.0> (192.168.2.209:55163 -> 192.168.2.121:5672)
2021-10-10 10:10:00.374144+08:00 [info] <0.6373.0> Connection <0.6373.0> (192.168.2.209:55163 -> 192.168.2.121:5672) has a client-provided name: connectionFactory#1fe41ea:0
2021-10-10 10:10:00.379347+08:00 [info] <0.6373.0> connection <0.6373.0> (192.168.2.209:55163 -> 192.168.2.121:5672 - connectionFactory#1fe41ea:0): user 'test' authenticated and granted access to vhost '/dzz'
2021-10-10 10:10:00.447322+08:00 [info] <0.6373.0> closing AMQP connection <0.6373.0> (192.168.2.209:55163 -> 192.168.2.121:5672 - connectionFactory#1fe41ea:0, vhost: '/dzz', user: 'test')
2021-10-10 10:21:06.128674+08:00 [info] <0.7521.0> accepting AMQP connection <0.7521.0> (192.168.2.209:63933 -> 192.168.2.121:5672)
2021-10-10 10:21:06.163503+08:00 [info] <0.7521.0> Connection <0.7521.0> (192.168.2.209:63933 -> 192.168.2.121:5672) has a client-provided name: connectionFactory#1d09a04:0
2021-10-10 10:21:06.167597+08:00 [info] <0.7521.0> connection <0.7521.0> (192.168.2.209:63933 -> 192.168.2.121:5672 - connectionFactory#1d09a04:0): user 'test' authenticated and granted access to vhost '/dzz'
2021-10-10 10:21:31.982845+08:00 [info] <0.7608.0> accepting AMQP connection <0.7608.0> (192.168.2.209:63964 -> 192.168.2.121:5672)
2021-10-10 10:21:32.031301+08:00 [info] <0.7608.0> Connection <0.7608.0> (192.168.2.209:63964 -> 192.168.2.121:5672) has a client-provided name: connectionFactory#1fe41ea:0
2021-10-10 10:21:32.035322+08:00 [info] <0.7608.0> connection <0.7608.0> (192.168.2.209:63964 -> 192.168.2.121:5672 - connectionFactory#1fe41ea:0): user 'test' authenticated and granted access to vhost '/dzz'
2021-10-10 10:21:32.091950+08:00 [info] <0.7608.0> closing AMQP connection <0.7608.0> (192.168.2.209:63964 -> 192.168.2.121:5672 - connectionFactory#1fe41ea:0, vhost: '/dzz', user: 'test')

监控面板:

http://服务器IP:15672/

服务器概览情况:

然后是一些用户信息:

或者使用命令查看:

[root@localhost ~]# rabbitmqctl -help

Usage

rabbitmqctl [--node <node>] [--timeout <timeout>] [--longnames] [--quiet] <command> [<command options>]

Available commands:

Help:

   autocomplete                  Provides command name autocomplete variants
help Displays usage information for a command
version Displays CLI tools version Nodes: await_startup Waits for the RabbitMQ application to start on the target node
reset Instructs a RabbitMQ node to leave the cluster and return to its virgin state
rotate_logs Does nothing [deprecated]
shutdown Stops RabbitMQ and its runtime (Erlang VM). Monitors progress for local nodes. Does not require a PID file path.
start_app Starts the RabbitMQ application but leaves the runtime (Erlang VM) running
stop Stops RabbitMQ and its runtime (Erlang VM). Requires a local node pid file path to monitor progress.
stop_app Stops the RabbitMQ application, leaving the runtime (Erlang VM) running
wait Waits for RabbitMQ node startup by monitoring a local PID file. See also 'rabbitmqctl await_online_nodes' Cluster: await_online_nodes Waits for <count> nodes to join the cluster
change_cluster_node_type Changes the type of the cluster node
cluster_status Displays all the nodes in the cluster grouped by node type, together with the currently running nodes
force_boot Forces node to start even if it cannot contact or rejoin any of its previously known peers
force_reset Forcefully returns a RabbitMQ node to its virgin state
forget_cluster_node Removes a node from the cluster
join_cluster Instructs the node to become a member of the cluster that the specified node is in
rename_cluster_node Renames cluster nodes in the local database
update_cluster_nodes Instructs a cluster member node to sync the list of known cluster members from <seed_node> Replication: cancel_sync_queue Instructs a synchronising mirrored queue to stop synchronising itself
sync_queue Instructs a mirrored queue with unsynchronised mirrors (follower replicas) to synchronise them Users: add_user Creates a new user in the internal database. This user will have no permissions for any virtual hosts by default.
authenticate_user Attempts to authenticate a user. Exits with a non-zero code if authentication fails.
change_password Changes the user password
clear_password Clears (resets) password and disables password login for a user
clear_user_limits Clears user connection/channel limits
delete_user Removes a user from the internal database. Has no effect on users provided by external backends such as LDAP
list_user_limits Displays configured user limits
list_users List user names and tags
set_user_limits Sets user limits
set_user_tags Sets user tags Access Control: clear_permissions Revokes user permissions for a vhost
clear_topic_permissions Clears user topic permissions for a vhost or exchange
list_permissions Lists user permissions in a virtual host
list_topic_permissions Lists topic permissions in a virtual host
list_user_permissions Lists permissions of a user across all virtual hosts
list_user_topic_permissions Lists user topic permissions
list_vhosts Lists virtual hosts
set_permissions Sets user permissions for a vhost
set_topic_permissions Sets user topic permissions for an exchange Monitoring, observability and health checks: list_bindings Lists all bindings on a vhost
list_channels Lists all channels in the node
list_ciphers Lists cipher suites supported by encoding commands
list_connections Lists AMQP 0.9.1 connections for the node
list_consumers Lists all consumers for a vhost
list_exchanges Lists exchanges
list_hashes Lists hash functions supported by encoding commands
list_node_auth_attempt_stats Lists authentication attempts on the target node
list_queues Lists queues and their properties
list_unresponsive_queues Tests queues to respond within timeout. Lists those which did not respond
ping Checks that the node OS process is up, registered with EPMD and CLI tools can authenticate with it
report Generate a server status report containing a concatenation of all server status information for support purposes
schema_info Lists schema database tables and their properties
status Displays status of a node Parameters: clear_global_parameter Clears a global runtime parameter
clear_parameter Clears a runtime parameter.
list_global_parameters Lists global runtime parameters
list_parameters Lists runtime parameters for a virtual host
set_global_parameter Sets a runtime parameter.
set_parameter Sets a runtime parameter. Policies: clear_operator_policy Clears an operator policy
clear_policy Clears (removes) a policy
list_operator_policies Lists operator policy overrides for a virtual host
list_policies Lists all policies in a virtual host
set_operator_policy Sets an operator policy that overrides a subset of arguments in user policies
set_policy Sets or updates a policy Virtual hosts: add_vhost Creates a virtual host
clear_vhost_limits Clears virtual host limits
delete_vhost Deletes a virtual host
list_vhost_limits Displays configured virtual host limits
restart_vhost Restarts a failed vhost data stores and queues
set_vhost_limits Sets virtual host limits
set_vhost_tags Sets virtual host tags
trace_off
trace_on Configuration and Environment: decode Decrypts an encrypted configuration value
encode Encrypts a sensitive configuration value
environment Displays the name and value of each variable in the application environment for each running application
set_cluster_name Sets the cluster name
set_disk_free_limit Sets the disk_free_limit setting
set_log_level Sets log level in the running node
set_vm_memory_high_watermark Sets the vm_memory_high_watermark setting Definitions: export_definitions Exports definitions in JSON or compressed Erlang Term Format.
import_definitions Imports definitions in JSON or compressed Erlang Term Format. Feature flags: enable_feature_flag Enables a feature flag or all supported feature flags on the target node
list_feature_flags Lists feature flags Operations: close_all_connections Instructs the broker to close all connections for the specified vhost or entire RabbitMQ node
close_all_user_connections Instructs the broker to close all connections of the specified user
close_connection Instructs the broker to close the connection associated with the Erlang process id
eval Evaluates a snippet of Erlang code on the target node
eval_file Evaluates a file that contains a snippet of Erlang code on the target node
exec Evaluates a snippet of Elixir code on the CLI node
force_gc Makes all Erlang processes on the target node perform/schedule a full sweep garbage collection
resume_listeners Resumes client connection listeners making them accept client connections again
suspend_listeners Suspends client connection listeners so that no new client connections are accepted Queues: delete_queue Deletes a queue
purge_queue Purges a queue (removes all messages in it) Deprecated: hipe_compile DEPRECATED. This command is a no-op. HiPE is no longer supported by modern Erlang versions
node_health_check DEPRECATED. Performs intrusive, opinionated health checks on a fully booted node. See https://www.rabbitmq.com/monitoring.html#health-checks instead Use 'rabbitmqctl help <command>' to learn more about a specific command
[root@localhost ~]#

二、消息追踪

一、追踪原理概述:

大概意思是,追踪的技术层面实现还是依靠这个队列和交换机,这个交换机和队列不是为了生产和业务应用

专门用于记录其他队列的工作情况。

Firehose功能

每个虚拟主机下的交换机都会默认创建一个Trace交换机:

交换机属性:

TOPIC通配符模式

持久化 是

内部使用 是

在 / 虚拟主机下创建一个监控队列(使用#路由分配 来监听所有队列)

将队列绑定到trace交换机上

在队列中发送一条消息测试:

我这多点了2条

https://www.pianshen.com/article/50101743795/

这里可以先查看下Trace功能的状态:

[root@localhost ~]# rabbitmq-plugins list
Listing plugins with pattern ".*" ...
Configured: E = explicitly enabled; e = implicitly enabled
| Status: * = running on rabbit@localhost
|/
[ ] rabbitmq_amqp1_0 3.9.7
[ ] rabbitmq_auth_backend_cache 3.9.7
[ ] rabbitmq_auth_backend_http 3.9.7
[ ] rabbitmq_auth_backend_ldap 3.9.7
[ ] rabbitmq_auth_backend_oauth2 3.9.7
[ ] rabbitmq_auth_mechanism_ssl 3.9.7
[ ] rabbitmq_consistent_hash_exchange 3.9.7
[ ] rabbitmq_event_exchange 3.9.7
[ ] rabbitmq_federation 3.9.7
[ ] rabbitmq_federation_management 3.9.7
[ ] rabbitmq_jms_topic_exchange 3.9.7
[E*] rabbitmq_management 3.9.7
[e*] rabbitmq_management_agent 3.9.7
[ ] rabbitmq_mqtt 3.9.7
[ ] rabbitmq_peer_discovery_aws 3.9.7
[ ] rabbitmq_peer_discovery_common 3.9.7
[ ] rabbitmq_peer_discovery_consul 3.9.7
[ ] rabbitmq_peer_discovery_etcd 3.9.7
[ ] rabbitmq_peer_discovery_k8s 3.9.7
[ ] rabbitmq_prometheus 3.9.7
[ ] rabbitmq_random_exchange 3.9.7
[ ] rabbitmq_recent_history_exchange 3.9.7
[ ] rabbitmq_sharding 3.9.7
[ ] rabbitmq_shovel 3.9.7
[ ] rabbitmq_shovel_management 3.9.7
[ ] rabbitmq_stomp 3.9.7
[ ] rabbitmq_stream 3.9.7
[ ] rabbitmq_stream_management 3.9.7
[ ] rabbitmq_top 3.9.7
[ ] rabbitmq_tracing 3.9.7

[ ] rabbitmq_trust_store 3.9.7
[e*] rabbitmq_web_dispatch 3.9.7
[ ] rabbitmq_web_mqtt 3.9.7
[ ] rabbitmq_web_mqtt_examples 3.9.7
[ ] rabbitmq_web_stomp 3.9.7
[ ] rabbitmq_web_stomp_examples 3.9.7
[root@localhost ~]#

应该是这个tracing功能,可以看见标识为 未启用的状态

现在把他打开:

[root@localhost ~]# rabbitmq-plugins enable rabbitmq_tracing
Enabling plugins on node rabbit@localhost:
rabbitmq_tracing
The following plugins have been configured:
rabbitmq_management
rabbitmq_management_agent
rabbitmq_tracing
rabbitmq_web_dispatch
Applying plugin configuration to rabbit@localhost...
The following plugins have been enabled:
rabbitmq_tracing started 1 plugins.
[root@localhost ~]#

然后设置trace为on

注意下面的输出,它是默认给 / 的虚拟主机添加的

[root@localhost ~]# rabbitmqctl trace_on
Starting tracing for vhost "/" ...
Trace enabled for vhost /
[root@localhost ~]#

如果添加到其他虚拟主机,则是:

-p 参数前缀 加上你的虚拟主机名字

rabbitmqctl trace_on -p myhost

现在再次发送消息:

开启后的消息明显和之前的不一样,会提供详细的信息:

查询全部消息,会发现,会有其他交换机也发送消息:

原来上面的那条是trace帮我发送的,下面的才是我自己发送的

关闭trace功能:

同样如果是其他虚拟主机,加-p前缀 带上主机名称

[root@localhost ~]# rabbitmqctl trace_off
Stopping tracing for vhost "/" ...
Trace disabled for vhost /
[root@localhost ~]#

我发现是我眼睛瞎了???

从【Admin】标签点进去是找不到Tracing功能的

然后又从头上那个 【Cluster】集群主机名点进去,这个Tracing功能才给我展示出来

现在新增一个追踪队列(使用Trace面板):

添加之后,会生成一个队列和一个日志:

访问日志文件需要用户授权,输入账号密码访问:

队列是一个专门追踪的队列

现在在之前测试的队列中发送消息 (test-trace-Q):

再回去看日志文件

日志信息:

================================================================================
2021-10-10 3:47:12:050: Message published Node: rabbit@localhost
Connection: <rabbit@localhost.1633827853.14098.0>
Virtual host: /
User: test
Channel: 1
Exchange:
Routing keys: [<<"test-trace-Q">>]
Routed queues: [<<"test-trace-Q">>]
Properties: [{<<"delivery_mode">>,signedint,1},{<<"headers">>,table,[]}]
Payload:
tracing-panel-function-test, message send....
================================================================================
2021-10-10 3:49:10:117: Message published Node: rabbit@localhost
Connection: <rabbit@localhost.1633827853.14360.0>
Virtual host: /
User: test
Channel: 1
Exchange:
Routing keys: [<<"test-trace-Q">>]
Routed queues: [<<"test-trace-Q">>]
Properties: [{<<"delivery_mode">>,signedint,1},{<<"headers">>,table,[]}]
Payload:
second message send...

Tracing面板上点击Stop,队列就会被移除,再点击Delete就删除了日志文件

【RabbitMQ】12 日志监控 & 消息追踪的更多相关文章

  1. 消息队列系列:Rabbitmq Trace 日志的使用

    一.什么是Trace       Trace是Rabbitmq用于记录每一次发送的消息,方便使用Rabbitmq的开发者调试.排错.可通过插件形式       提供可视化界面   二.Trace实现概 ...

  2. 分布式链路监控与追踪系统Zipkin

    1.分布式链路监控与追踪产生背景2.SpringCloud Sleuth + Zipkin3.分布式服务追踪实现原理4.搭建Zipkin服务追踪系统5.搭建Zipkin集成RabbitMQ异步传输6. ...

  3. 基于SLF4J的MDC机制和Dubbo的Filter机制,实现分布式系统的日志全链路追踪

    原文链接:基于SLF4J的MDC机制和Dubbo的Filter机制,实现分布式系统的日志全链路追踪 一.日志系统 1.日志框架 在每个系统应用中,我们都会使用日志系统,主要是为了记录必要的信息和方便排 ...

  4. rabbitmq trace 日志的使用以及其疑惑之处

    RabbitMQ 默认日志里只有类似客户端"accpet/close"等信息,对于有异常或者跟踪消息内部结构就比较麻烦了. 不过MQ有个rabbitmq_tracing插件,安装该 ...

  5. rabbitmq 重复ACK导致消息丢失

    rabbitmq 重复确认导致消息丢失 背景 rabbitmq 在应用场景中,大多采用工作队列 work-queue的模式. 在一个常见的工作队列模式中,消费者 worker 将不断的轮询从队列中拉取 ...

  6. [Asp.net]SignalR实现实时日志监控

    摘要 昨天吃饭的时候,突然想起来一个好玩的事,如果能有个页面可以实时的监控网站或者其他类型的程序的日志,其实也不错.当然,网上也有很多成熟的类似的监控系统.就想着如果通过.net该如何实现?所以就在想 ...

  7. MySQL慢日志监控脚本实例剖析

    公司线上的 MySQL 慢日志,之前一直没有做好监控.趁着上周空闲,我就把监控脚本写了下,今天特地把代码发出来与51博友分享一下. 针对脚本的注解和整体构思,我会放到脚本之后为大家详解. 1 2 3 ...

  8. SignalR实现实时日志监控

    .net SignalR实现实时日志监控   摘要 昨天吃饭的时候,突然想起来一个好玩的事,如果能有个页面可以实时的监控网站或者其他类型的程序的日志,其实也不错.当然,网上也有很多成熟的类似的监控系统 ...

  9. 一种轻量级的微信小程序日志监控的方法

    今天一个活动要写个H5,明天一个功能要用小程序,天天都在写bug.用户反馈小程序用起来有问题还特么还不知道到底出了啥bug,反馈多了,老板要扣工资了!看来挖了太多坑不填也不行,程序异常还是要主动追踪, ...

  10. 24 Zabbix系统配置日志监控告警--关键字触发

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 24 Zabbix系统配置日志监控告警--关键字触发 trapper是被监控主机主动发送数据给za ...

随机推荐

  1. 网络问题排查必备利器:Pingmesh

    背景 当今的数字化世界离不开无处不在的网络连接.无论是日常生活中的社交媒体.电子商务,还是企业级应用程序和云服务,我们对网络的依赖程度越来越高.然而,网络的可靠性和性能往往是一个复杂的问题,尤其是在具 ...

  2. Asp.net Core 经过nginx代理后获取不到真实ip和scheme的问题

    背景 我最近在一个Asp.net core Web 程序在经过nginx代理后 ,总是获取不到用户真实i和scheme(HttpContext.Request.Scheme),挠头: 我们一般从请求头 ...

  3. EyeLink 1000 plus(桌面式)眼动仪使用指导

    一.简介 眼动追踪是测量眼睛运行的过程.眼动追踪研究的最关注的事件是确定人类或者动物看的地方(比如:"注视点"或"凝视点").更准确来说是通过仪器设备进行图像处 ...

  4. Linux中的inode

    inode是什么 一个文件由两部分组成:元信息和数据. 在Linux中,inode包含文件的元信息,具体来说有以下内容: Size 文件的字节数 Uid 文件拥有者的User ID Gid 文件的Gr ...

  5. 如何在Spring Boot框架下实现高效的Excel服务端导入导出?

    前言 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置 ...

  6. MoneyPrinterPlus:AI自动短视频生成工具-腾讯云配置详解

    MoneyPrinterPlus可以使用大模型自动生成短视频,其中的语音合成和语音识别部分需要借助于一些第三发云厂商的语音服务. 很多小伙伴可能不知道应该如何配置,这里给大家提供一个详细的腾讯云语音服 ...

  7. php不使用Office包实现上万条数据导出表格

    经过上传客户要求主副表迁出,又提出可以将某张表的数据导出excel,听着很简单,实际看数据表发现上万条数据,并且需要关联表查询相关字段,导出的表格才可以被客户看明白. 要是使用office包目前后台内 ...

  8. 图最短路径之BellmanFord

    Bellman–Ford Algorithm 算法参考地址:Bellman–Ford Algorithm | DP-23 - GeeksforGeeks 算法的简介 在图中给定一个图形和一个源顶点 s ...

  9. 图片接口JWT鉴权实现

    图片接口JWT鉴权实现 前言 之前做了个返回图片链接的接口,然后没做授权,然后今天键盘到了,也是用JWT来做接口的权限控制. 然后JTW网上已经有很多文章来说怎么用了,这里就不做多的解释了,如果不懂的 ...

  10. KEIL5 编译生成 hex、bin文件

    --- title: file_name date: 2020-05-31 10:27:10 categories: tags: - stm32 - keil - config --- KEIL 工程 ...