当前位置: 首页 > news >正文

openharmony中hilog实证记录说明(3.1和5.0版本)

每次用这个工具hilog都有一些小用法记不清,需要花一些时间去查去分析使用方法,为了给丰富多彩的生活留出更多的时间,所以汇总整理共享来了,它来了它来了~~~~~~~~~

开始是想通过3.1来汇总的,但实际测试发现openharmony3.1和openharmony5.0的区别还是比较大的,所以中间又采用的5.0的版本,有使用3.1版本的可以查看最后的openharmony3.1版本的hilog工具的帮助信息的简单说明。

命令行说明

短选项长选项参数说明
-h–help-帮助命令。
缺省缺省-阻塞读日志,不退出。
-x–exit-非阻塞读日志,读完退出。
-g--查询buffer的大小,配合-t指定某一类型使用,默认app和core。
-G–buffer-size设置指定日志类型缓冲区的大小,配合-t指定某一类型使用,默认app和core, 可使用B/K/M为单位,范围为64K-16M。
-r--清除buffer日志,配合-t指定某一类型使用,默认app和core。
-k-<on/off>Kernel日志读取开关控制。
on打开读取kernel日志。
off关闭读取kernel日志。
-s–statistics-查询统计信息,需配合-t或-D使用。
-S--清除统计信息,需配合-t或-D使用。
-Q-流控缺省配额开关控制。
pidon进程流控开关打开。
pidoff进程流控开关关闭。
domainondomain流控开关打开。
domainoffdomain流控开关关闭。
-L–level指定级别的日志,示例:-L D/I/W/E/F。
-t–type指定类型的日志,示例:-t app/core/init/only_prerelease。app为应用日志,core为系统日志,init为启动日志,only_prerelease为仅在系统release版本前打印的日志,应用开发者无需关注。
-D–domain指定domain。
-T–tag指定tag。
-a–head只显示前行日志。
-z–tail只显示后行日志。
-P–pid标识不同的pid。
-e–regex只打印日志消息与匹配的行,其中是一个正则表达式。
-f–filename设置落盘的文件名。
-l–length设置落盘的文件大小,需要大于等于64K。
-n–number设置落盘文件的个数。
-j–jobid设置落盘任务的ID。
-w–write落盘任务控制。
query落盘任务查询。
start落盘任务开始,命令行参数为文件名、单文件大小、落盘算法、rotate文件数目。
stop落盘任务停止。
refresh刷新缓冲区的日志到落盘文件。
clear删除已经落盘的日志文件。
-m–stream落盘方式控制。
none无压缩方式落盘。
zlibzlib压缩算法落盘,落盘文件为.gz。
zstdzstd压缩算法落盘,落盘文件为.zst。
-v–format显示格式控制。
time显示本地时间。
color显示不同级别显示不同颜色,参数缺省级别颜色模式处理(按黑白方式)。
epoch显示相对1970时间。
monotonic显示相对启动时间。
usec显示微秒精度时间。
nsec显示纳秒精度时间。
year显示将年份添加到显示的时间。
zone显示将本地时区添加到显示的时间。
wrap日志换行显示时,新行不增加时间戳等前缀。
-b–baselevel设置可打印日志的最低等级:D(DEBUG)/I(INFO)/W(WARN)/E(ERROR)/F(FATAL)。

一、命令格式

hilog [选项]

二、功能说明

1. 显示帮助信息

  • -h:显示所有帮助信息。
  • query/clear/buffer/stats/persist/private/kmsg/flowcontrol/baselevel/domain/combo:显示指定操作类型的帮助信息。
字段(操作类型)说明
query查询
clear清除
buffer缓存buffer
stats统计信息相关,可查询
persist存储相关的设置
privateHILOG API 的隐私格式化功能
kmsg是否读取内核日志
flowcontrol设置日志流控功能
baselevel设置可打印日志的等级,例如D(DEBUG)/I(INFO)/W(WARN)/E(ERROR)/F(FATAL)
domain分类标识符,对日志或功能进行分类和管理
combo一些组合说明,例如开关的开和关不能同时组合啥的,常识类的东西。

2. 查询日志

2.1无选项

执行阻塞读取并持续打印日志。

  • 命令
hilog
  • 实证

在这里插入图片描述

读完之后会一直阻塞循环读取,类似linux中tail命令实现的效果。

2.2非阻塞读取

执行打印缓冲区中所有日志后退出

  • 命令
hilog -x
  • 实证

例如我清除日志后,重新读一下日志,会打印出当前的最新的日志,并会自动退出。

在这里插入图片描述

2.3显示缓冲区前 n 行日志
  • 命令
hilog -a 10
  • 实证

查询前三行的日志。

在这里插入图片描述

2.4显示缓冲区后 n 行日志
  • 命令
hilog -z 10
  • 实证

查询后三行的日志

在这里插入图片描述

2.5显示指定类型的日志

显示指定类型的日志。类型可以是:app/core/init/kmsg/only_prerelease,默认类型是:app,core,init,only_prerelease

类型说明
app用于应用程序的日志。这些日志通常由应用程序开发者编写,用于记录应用的运行状态、用户操作等
core用于系统核心模块的日志。这些日志记录系统的核心功能和底层操作
init用于系统初始化过程的日志。这些日志记录系统启动时的初始化操作
kmsg用于内核消息的日志。这些日志记录内核的运行状态和事件
only_prerelease仅在系统预发布版本(pre-release)中打印的日志。这些日志通常用于内部测试和调试,不适用于正式发布版本
  • 命令
hilog -t app core
  • 实证

在这里插入图片描述

2.6显示指定级别日志

显示指定级别,长级别字符串可以是:DEBUG/INFO/WARN/ERROR/FATAL,短级别字符串可以是:D/I/W/E/F,默认级别是所有级别。

  • 命令
hilog -L D
  • 实证

只显示对应级别的日志

在这里插入图片描述

日志级别说明
  • D(DEBUG):调试信息,用于开发和测试阶段,记录详细的运行状态和变量值。
  • I(INFO):普通信息,记录正常运行时的重要事件。
  • W(WARN):警告信息,表示可能存在的问题,但不会影响系统的正常运行。
  • E(ERROR):错误信息,表示系统运行中出现的错误,可能会影响功能的正常执行。
  • F(FATAL):严重错误,表示系统运行中出现的致命错误,可能导致程序崩溃或无法继续运行。
2.7显示指定域

显示指定域(格式:domain1,domain2,domain3)或排除指定域(格式:^domain1,domain2,domain3)的日志。最大域数为 5

  • 命令
hilog -D 02b00
  • 实证

在这里插入图片描述
根据参考资料实际应该是日志中的02b00这个,但是我这个版本的hilog显示不出来,不清楚是我操作问题还是小bug,有码友了解的也麻烦告知一下🔐

2.8显示指定标签

显示指定标签(格式:tag1,tag2,tag3)或排除指定标签(格式:^tag1,tag2,tag3)的日志。最大标签数为 10。

指定显示命令
hilog -T DisplayPowerBrightness,wpa_supplicant  
  • 实证
    在这里插入图片描述
指定排除标签显示命令
hilog -T ^DisplayPowerBrightness,wpa_supplicant  
  • 实证

在这里插入图片描述

2.9显示指定进程 ID

显示指定进程 ID(格式:pid1,pid2,pid3)或排除指定进程 ID(格式:^pid1,pid2,pid3)的日志。最大进程 ID 数为 5

指定显示命令
hilog -P 1221
  • 实证

在这里插入图片描述

指定排除指定进程显示命令
hilog -P ^1221,254,530
  • 实证

在这里插入图片描述

2.10匹配正则表达式

-e <expr>:显示匹配正则表达式 <expr> 的日志。

  • 命令
hilog -e start
  • 实证

在这里插入图片描述

2.11不同格式显示日志

-v <format>:以不同格式显示日志

  • 命令
hilog -v color/time/msec....
  • color:按日志级别显示彩色日志。

在这里插入图片描述

在这里插入图片描述

  • time:显示本地时间(默认)。

在这里插入图片描述

  • epoch:显示从 1970/1/1 开始的时间。
  • monotonic:显示从启动开始的 CPU 时间。
  • msec:以毫秒显示时间(默认)。
  • usec:以微秒显示时间。
  • nsec:以纳秒显示时间。
  • year:当指定 -v time 时显示年份。
  • zone:当指定 -v time 时显示时区。
  • wrap:当日志行换行时无前缀显示日志。

3. 清除日志

3.1清除 hilogd 缓冲区中的所有日志
  • 命令
hilog -r
  • 实证

在这里插入图片描述

3.2清除缓冲区中指定类型

-t <type>:清除缓冲区中指定类型(格式:type1,type2,type3)的日志。类型可以是:app/core/init/kmsg/only_prerelease,默认类型是:app,core,only_prerelease。

  • 命令
hilog -r -t core
  • 实证

在这里插入图片描述

4. 查询缓冲区大小

4.1查询 hilogd 缓冲区大小
  • 命令
hilog -g
  • 实证

在这里插入图片描述

4.2查询指定类型的缓冲区大小

-t <type>:查询指定类型(格式:type1,type2,type3)的缓冲区大小。类型可以是:app/core/init/kmsg/only_prerelease,默认类型是:app,core,only_prerelease。

  • 命令
hilog -g -t app
  • 实证

在这里插入图片描述

5. 设置缓冲区大小

5.1设置 hilogd 缓冲区大小
  • 命令

-G <size>:设置 hilogd 缓冲区大小,<size> 可以是数字或带单位的数字。单位可以是:B/K/M/G,分别表示字节、千字节、兆字节、吉字节。<size> 范围:[64.0K, 512.0M]。

hilog -G 62M
  • 实证

在这里插入图片描述

5.2设置 指令类型缓冲区大小

-t <type>:设置指定类型(格式:type1,type2,type3)的日志缓冲区大小。类型可以是:app/core/init/kmsg/only_prerelease,默认类型是:app,core,only_prerelease。这是一个持久化配置。

  • 命令
hilog -G 200M -t app
  • 实证

在这里插入图片描述

6. 查询统计信息

-s:查询日志统计信息。设置参数 persist.sys.hilog.stats 为 true 可启用统计。设置参数 persist.sys.hilog.stats.tag 为 true 可启用日志标签统计。

  • 命令
hilog -s
  • 实证

在这里插入图片描述

设置参数命令param set persist.sys.hilog.stats trueparam set persist.sys.hilog.stats.tag true

  • 实证

在这里插入图片描述

💙注意设置完之后需要重启才能生效。。。。。。

7. 清除统计信息

清除 hilogd 统计信息

  • 命令
hilog -S 
  • 实证

在这里插入图片描述

8. 日志持久化任务控制

-w <control>:日志持久化任务控制,选项包括:

  • query:查询任务信息。

在这里插入图片描述

  • stop:停止所有任务。

在这里插入图片描述

  • start:启动一个任务。

在这里插入图片描述

在这里插入图片描述

  • refresh:将缓冲区内容刷新到文件。

    在这里插入图片描述

  • clear:清除 /data/log/hilog/hilog*.gz

在这里插入图片描述

  • 高级选项:

    • -f <filename>:设置日志文件名,名称应为 Linux 文件系统的有效名称。
    • -l <length>:设置单个日志文件大小。<length> 可以是数字或带单位的数字。单位可以是:B/K/M/G,分别表示字节、千字节、兆字节、吉字节。<length> 范围:[64.0K, 512.0M]。
    • -n <number>:设置最大日志文件数,当文件数超过此数量时进行日志文件轮转。<number> 范围:[2, 1000]。
    • -m <compress algorithm>:设置日志文件压缩算法,选项包括:
      • none:写入未压缩的日志文件。
      • zlib:写入 zlib 压缩的日志文件。
    • -j <jobid>:启动或停止指定任务的 <jobid><jobid> 范围:[10, 0xffffffff)。用户可以使用选项(t/L/D/T/P/e/v)启动任务,就像在 “查询日志” 时使用它们一样。这是一个持久化配置。

    例如开启kmsglog落盘任务,并且设置落盘规则,文件名为kmsglog,大小为2M,数量为100个, 其压缩方式为zlib压缩

    hilog -w start -t kmsg -f kmsglog -l 2M -n 100 -m zlib
    

    在这里插入图片描述

9. 设置日志隐私格式化功能

-p <on/off>:设置 HILOG API 隐私格式化功能为开启或关闭。这是一个临时配置,重启后会丢失。

  • 命令
hilog -p on 
  • 实证

在这里插入图片描述

10. 设置 hilogd 存储 kmsg 日志功能

-k <on/off>:设置 hilogd 存储 kmsg 日志功能为开启或关闭。这是一个持久化配置。

  • 命令
hilog -k off
  • 实证

在这里插入图片描述

11. 设置日志流控制功能

-Q <control-type>:设置日志流控制功能为开启或关闭,选项包括:

  • pidon:进程流控制开启,当某个进程的日志输出过多时,系统会自动限制该进程的日志输出频率,以避免日志过多对系统性能造成影响。
  • pidoff:进程流控制关闭。当某个日志域的日志输出过多时,系统会自动限制该域的日志输出频率。日志域通常是按照功能模块或服务划分的,例如“网络模块”、“文件系统模块”等。
  • domainon:域流控制开启。
  • domainoff:域流控制关闭。
  • 命令
hilog -Q pidoff

💙这是一个临时配置,重启后会丢失。

  • 实证

在这里插入图片描述

12. 设置全局日志级别

  • -b <loglevel>:设置全局日志级别为 <loglevel>。长级别字符串可以是:DEBUG/INFO/WARN/ERROR/FATAL/X,短级别字符串可以是:D/I/W/E/F/X。X 表示日志级别高于最大级别,不会打印任何日志。

从低到高通常分为 DEBUG、INFO、WARN、ERROR 和 FATAL。

  • 命令
hilog -b E

💙这是一个临时配置,重启后会丢失。

  • 实证

在这里插入图片描述

可以看到上面截图中还有I级别的日志,具体原因未知,但是后续的日志就只有E级别了。

此命令可以结合-D和-T参数来指定域和标签的日志级别。

  • -D <domain>:设置指定域的日志级别。

  • -T <tag>:设置指定标签的日志级别。优先级为:标签级别 > 域级别 > 全局级别。

  • 命令

hilog -b E -D app 
  • 实证

在这里插入图片描述

13、注意事项

第一层选项不能组合使用,例如:hilog -S -shilog -w start -rhilog -p on -k on -b D

openharmony3.1版本的hilog工具的帮助信息

hilog -h                                                                     
Usage:  [options]
options include:No option default action: performs a blocking read and keeps printing.#1.无选项默认操作,执行阻塞读取并继续打印。-h --help          show this message.#2.显示帮助信息-x --exit          Performs a non-blocking read and exits immediately.#3.执行非阻塞读取并立即退出。-g                 query hilogd buffer size, use -t to specify log type.#4.查询日志缓冲区大小,使用-t指定日志类型。-p, --privacy      set privacy formatter feature on or off.#5.设置打开或关闭格式化功能on  turn onoff turn off-k				store log type kmsg or not #6.存储日志类型是否为kmsgon  yesoff no-s, --statistics   query hilogd statistic information.#7.查询基本的统计信息-S                 clear hilogd statistic information.#8.清楚基本的统计信息-r                 remove the logs in hilog buffer, use -t to specify log type #9.删除hilog缓冲区中的日志,使用-t来指定日志类型-Q <control-type>      set log flow-control feature on or off.# 9.设置打开或关闭日志流控制功能pidon     process flow control onpidoff    process flow control offdomainon  domain flow control ondomainoff domain flow contrl off-L <level>, --level=<level> # 10.在特定的级别上输出日志Outputs logs at a specific level.-t <type>, --type=<type>    Reads <type> and prints logs of the specific type,#11.打印特定类型的日志which is -t app (application logs) by default.#默认情况下是-t应用程序(应用程序日志)。-D <domain>, --domain=<domain> specify the domain, no more than 5.# 12.指定域,不超过5。-T <tag>, --Tag=<tag> specify the tag, no more than 10. # 13.指定标记-a <n>, --head=<n> show n lines log on head. #14.显示前N行-z <n>, --tail=<n> show n lines log on tail. #15.显示最后的N行-G <size>, --buffer-size=<size>set hilogd buffer size, use -t to specify log type.# 16设置日志记录缓冲区大小,使用-t指定日志类型。-P <pid>           specify pid, no more than 5. #16指定pid,不超过5。-e <expr>, --regex=<expr> # 17.显示匹配正则表达式的日志show the logs which match the regular expression,<expr> is a regular expression.-f <filename>, --filename=<filename>set log file name.# 18.设置日志文件名称-l <length>, --length=<length>set single log file size.# 19.设置日志文件大小-n <number>, --number<number>set max log file numbers.# 19.设置最大日志文件数-j <jobid>, --jobid<jobid>start/stop the log file writing task of <jobid>.#20.启动/停止<jobid>的日志文件写入任务。-w <control>,--write=<control>query      log file writing task query.# 21.日志文件写入任务查询start      start a log file writing task, see -F -l -n -c for to set more configs,stop       stop a log file writing task.-m <compress algorithm>,--stream=<compress algorithm>#22.压缩算法none       log file without compressingzlib       compress log file by the zlib algorithmzstd       compress log file by the zstd algorithm-v <format>, --format=<format> options:#23.设置显示格式time       display local time.color      display colorful logs by log level.i.e. VERBOSEDEBUG INFO WARN                     ERROR FATALepoch      display the time from 1970/1/1.monotonic  display the cpu time from bootup.usec       display time by usec.nsec       display time by nano sec.year       display the year.zone       display the time zone.-b <loglevel>, --baselevel=<loglevel>set loggable level. #24.设置可加载级别Types, levels, domains, tags support exclusion query.Exclusion query can be done with parameters starting with "^" and delimiter ",".Example: "-t ^core,app" excludes logs with types core and app.Could be used along with other parameters.

参考资料

hilog

相关文章:

openharmony中hilog实证记录说明(3.1和5.0版本)

每次用这个工具hilog都有一些小用法记不清&#xff0c;需要花一些时间去查去分析使用方法&#xff0c;为了给丰富多彩的生活留出更多的时间&#xff0c;所以汇总整理共享来了&#xff0c;它来了它来了~~~~~~~~~ 开始是想通过3.1来汇总的&#xff0c;但实际测试发现openharmony…...

飞书 设计智能字段:通过“字段类型”添加AI功能列

在飞书多维表格中&#xff0c;通过“字段类型”添加AI功能列的核心逻辑是将AI模型能力与结构化数据结合&#xff0c;实现自动化内容生成与信息处理。以下是具体操作步骤及关键要点&#xff0c;结合实际应用场景说明&#xff1a; 一、基础操作步骤 创建多维表格 登录飞书&#x…...

Cannot find module @rollup/rollup-win32-x64-msvc

方法1 在package.json中添加postinstall: "scripts": {"postinstall": "node -e \"const { platform } process; if (platform win32) { require(child_process).execSync(npm install rollup/rollup-win32-x64-msvc, { stdio: inherit });…...

Docker和Dify学习笔记

文章目录 1 docker学习1.1 基本命令使用1.1.1 docker ps查看当前正在运行的镜像1.1.2 docker stop停止容器1.1.3 docker compose容器编排1.1.4 docker网络[1] 进入到容器里面敲命令[2] docker network ls[3] brige网络模式下容器访问宿主机的方式 2 Dify的安装和基础使用2.1 下…...

【AIGC】Win10系统极速部署Docker+Ragflow+Dify

【AIGC】WIN10仅3步部署DockerRagflowDify 一、 Docker快速部署1.F2进入bios界面&#xff0c;按F7设置开启VMX虚拟化技术。保存并退出。2.打开控制面板配置开启服务3.到官网下载docker安装包&#xff0c;一键安装&#xff08;全部默认勾选&#xff09; 二、 RagFlow快速部署1.确…...

Oracle ASM 磁盘组冗余策略

Oracle ASM 磁盘组冗余策略 1. 外部冗余&#xff08;External Redundancy&#xff09;2. 普通冗余&#xff08;Normal Redundancy&#xff09;3. 高冗余&#xff08;High Redundancy&#xff09;关键注意事项如何选择合适的策略&#xff1f; Oracle ASM&#xff08;Automatic S…...

C++ 数据结构

C++ 数据结构 概述 C++作为一种强大的编程语言,在软件开发领域有着广泛的应用。数据结构作为C++编程中不可或缺的一部分,它决定了程序的性能和效率。本文将详细介绍C++中的常见数据结构,包括其定义、特点以及在实际应用中的使用方法。 常见数据结构 1. 数组 数组是一种…...

Unity NodeCanvas AI使用笔记

扩展: 1. 输入输出参数限制&#xff0c;增加描述&#xff0c;根据接口判断类型限制 2.选择节点&#xff0c;遍历节点&#xff0c;行为节点 3.行为节点 行为执行的时候有互斥关系&#xff0c;加入一个queue&#xff0c;最后执行 4.NodeCanvas的参数传参可以由上个节点传到下个节…...

(* IOB = “FORCE“ *) 的使用分享

在Xilinx FPGA设计中&#xff0c;IOBFORCE是一个与输入输出块&#xff08;IOB&#xff09;相关的属性设置。这个设置主要用于控制逻辑是否被推入到IOB&#xff08;Input/Output Block&#xff09;中&#xff0c;即FPGA芯片边缘的I/O引脚附近的专用硬件资源。使用IOB属性可以帮助…...

【大语言模型_7】利用ragas框架评测rag系统指标

一、介绍 ragas是一个用来评估RAG系统的框架&#xff0c;允许不在依赖人工注释的情况下&#xff0c;通过一套指标评估检索模块和生成模块的性能及其质量。 二、准备 数据准备&#xff1a;需要准备评估数据集&#xff0c;数据集格式如下 [{"question": "安全智…...

adb常用的命令

1. 查看adb版本 adb version 2. 将apk安装包安装到手机/模拟器上 adb install apk路径 3. 获取apk包名和界面名 包名&#xff08;package&#xff09;&#xff1a;决定程序的唯一性 界面名&#xff08;activity&#xff09;&#xff1a;一个界面界面名&#xff0c;对应一个界面…...

手动集成sqlite的方法

注意到sqlite有backup方法&#xff08;https://www.sqlite.org/backup.html&#xff09;。 也注意到android中sysroot下&#xff0c;没有sqlite3的库&#xff0c;也没有相关头文件。 如果要使用 sqlite 的backup&#xff0c;那么就需要手动集成sqlite代码到项目中。可以如下操…...

自然语言处理(NLP)技术

人工智能&#xff08;Artificial Intelligence&#xff0c;AI&#xff09;是一种模拟人类智能思维过程的技术&#xff0c;它在现代科技中的应用非常广泛&#xff0c;涉及诸多领域&#xff0c;如自然语言处理、计算机视觉、机器学习、数据分析等。以下是人工智能在现代科技中的应…...

【GPT入门】第25课 掌握 LangChain:链式调用的奥秘、特性与使用示例

【GPT入门】第25课 掌握 LangChain&#xff1a;链式调用的奥秘、特性与使用示例 语法解释各部分性质链式调用的性质调用方式注意事项 语法解释 你给出的代码 is_duplicated_chain (check_duplicated | model | parser) 运用了 LangChain 里的链式调用语法。在 LangChain 中&a…...

机器学习之DBSCAN算法详解

文章目录 引言1. DBSCAN算法概述2.DBSCAN算法的基本概念2.1 ε-邻域2.2 核心点&#xff08;Core Point&#xff09;2.3 边界点&#xff08;Border Point&#xff09;2.4 噪声点&#xff08;Noise Point&#xff09;2.5 直接密度可达&#xff08;Directly Density-Reachable&…...

借助vite来优化前端性能

Vite 是一个现代化的前端构建工具&#xff0c;凭借其基于原生 ES 模块的开发服务器和高效的构建能力&#xff0c;可以显著优化前端性能。 一、开发环境优化 1.快速启动与热更新 Vite 利用浏览器对 ES 模块的原生支持&#xff0c;在开发环境中无需打包&#xff0c;直接按需加载…...

[工控机安全] 使用DriverView快速排查不可信第三方驱动(附详细图文教程)

导语&#xff1a; 在工业控制领域&#xff0c;设备驱动程序的安全性至关重要。第三方驱动可能存在兼容性问题、安全漏洞甚至恶意代码&#xff0c;威胁设备稳定运行。本文将手把手教你使用 DriverView工具&#xff0c;高效完成工控机驱动安全检查&#xff0c;精准识别可疑驱动&a…...

Execution failed for task ‘:path_provider_android:compileDebugJavaWithJavac‘.

What went wrong: Execution failed for task ‘:path_provider_android:compileDebugJavaWithJavac’. Could not resolve all files for configuration ‘:path_provider_android:androidJdkImage’. Failed to transform core-for-system-modules.jar to match attributes {…...

基于SpringBoot的社区/物业管理系统

项目介绍 平台采用B/S结构&#xff0c;后端采用主流的SpringBoot语言进行开发&#xff0c;前端采用主流的Vue.js进行开发。是一个综合的社区/物业管理系统。 整个平台包括前台和后台两个部分。 - 前台功能包括&#xff1a;小区信息、社区论坛、社区公告、社区留言板、个人中心。…...

vmware下linux无法上网解决方法

首先&#xff0c;打开打开"编辑" “虚拟网络编辑器”,并将"桥接"方式的网卡选择为主机上网的网卡。 虚拟机中&#xff0c;设置IP地址为主机网卡同样子网下的ip地址&#xff1a; 并且要选择桥接模式&#xff01;注意如下图&#xff0c;"复制物理连接状…...

【数据库备份】docker中数据库备份脚本——MySql备份脚本

docker中数据库备份脚本——MySql备份脚本 #!/bin/bash# MySQL数据库信息 DB_USER"root" DB_PASSWORD"你的密码"# 备份保存主目录 BACKUP_ROOT"/data/data_backup/mysql"# 最多保留的备份日期文件夹数 MAX_DATE_FOLDERS15# 数组包含要备份的数据…...

SpringBoot 第二课(Ⅰ) 整合springmvc(详解)

目录 一、SpringBoot对静态资源的映射规则 1. WebJars 资源访问 2. 静态资源访问 3. 欢迎页配置 二、SpringBoot整合springmvc 概述 Spring MVC组件的自动配置 中央转发器&#xff08;DispatcherServlet&#xff09; 控制器&#xff08;Controller&#xff09; 视图解…...

centos家用笔记

改用阿里云yum源 因CentOS7已经停止维护&#xff0c;原有的yum源也无法使用&#xff0c;在国内&#xff0c;改用阿里云yum源是个方便的选择。 cd /etc/yum.repos.d/ mkdir backup mv Cent* backup wget http://mirrors.aliyun.com/repo/Centos-7.repo mv Centos-7.repo Cen…...

数据可视化(matplotlib)-------辅助图标的设置

目录 一、认识图表常用的辅助元素 坐标轴 二、设置坐标轴的标签、刻度范围和刻度标签 &#xff08;一&#xff09;、设置坐标轴的标签 1、xlabel()------设置x轴标签 2、ylabel()------设置y轴标签 &#xff08;二) 、设置刻度范围和刻度标签 1、xlim()和ylim()函数分别可…...

15-双链表-双链表基本操作

题目 来源 827. 双链表 - AcWing题库 思路 此题我只想说&#xff0c;千万千万别漏了头结点和尾结点&#xff0c;不然根本查不出来是哪里出了问题&#xff0c;因为传入的k会有问题&#xff1b;最左边插入&#xff0c;相当于是在头结点的右边插入&#xff08;也就是0号节点的右…...

HTTP和RPC的区别

RPC和 HTTP是两种常见的通信方式&#xff0c;它们在设计目标、使用场景和技术实现上有显著区别。以下是它们的详细对比&#xff1a; 1. 定义与核心思想 特性RPCHTTPRemote Procedure Call远程过程调用HyperText Transfer Protocol超文本传输协议定义一种协议或框架&#xff0…...

【Linux内核系列】:动静态库详解

&#x1f525; 本文专栏&#xff1a;Linux &#x1f338;作者主页&#xff1a;努力努力再努力wz &#x1f4aa; 今日博客励志语录&#xff1a; 有些鸟儿是注定是关不住的&#xff0c;因为它们的每一片羽翼都沾满了自由的光辉 ★★★ 本文前置知识&#xff1a; 编译与链接的过程…...

【IROS 2025】CMU提出路径规划器PIPE:机器人探索效率提升14.6%,地图准确率提高9.3%!

在自主机器人探索未知环境的研究中&#xff0c;如何高效地规划路径、最大化信息获取&#xff0c;一直是一个核心问题。传统的方法往往仅在离散的路径点上计算信息增益&#xff0c;而缺乏对整个路径信息获取的综合考量&#xff0c;从而可能导致探索低效甚至错误的规划决策。近日…...

《笔记》Android 获取第三方应用及查看应用信息、apk大小、缓存、存储,以及第三方清除缓存

获取应用相关信息&#xff1a; PS:manifest标签中设置以下属性表示系统应用 android:process"system" android:sharedUserId"android.uid.system" //获取所有应用&#xff08;非系统apk&#xff0c;有些应用获取不到&#xff09; List<ApplicationInf…...

npm 安装 pnpm 的详细步骤及注意事项

一、安装步骤 1.全局安装 pnpm npm install -g pnpm2.验证安装 pnpm -v输出版本号即表示安装成功。 二、升级 pnpm 若已安装旧版本&#xff0c;可通过以下命令升级&#xff1a; npm install -g pnpmlatest三、配置镜像加速 设置淘宝镜像 pnpm config set registry http…...

大白话详细解读React框架的diffing算法

1. Diffing 算法是什么&#xff1f; Diffing 算法是 React 用来比较虚拟 DOM&#xff08;Virtual DOM&#xff09;树的一种算法。它的作用是找出前后两次渲染之间的差异&#xff08;diff&#xff09;&#xff0c;然后只更新这些差异部分&#xff0c;而不是重新渲染整个页面。 …...

【架构】单体架构 vs 微服务架构:如何选择最适合你的技术方案?

文章目录 ⭐前言⭐一、架构设计的本质差异&#x1f31f;1、代码与数据结构的对比&#x1f31f;2、技术栈的灵活性 ⭐二、开发与维护的成本博弈&#x1f31f;1、开发效率的阶段性差异&#x1f31f;2、维护成本的隐形陷阱 ⭐三、部署与扩展的实战策略&#x1f31f;1、部署模式的本…...

面试redis常被问到的面试题含答案

什么是Redis&#xff1f;它的特点是什么&#xff1f; Redis是一个开源的内存数据库&#xff0c;用于存储数据并支持多种数据结构&#xff08;如字符串、哈希、列表、集合、有序集合等&#xff09;。其特点包括高性能、支持持久化、数据结构丰富、原子性操作、支持事务等。 Red…...

Asp.net Core API 本地化

本文是一个demo&#xff0c;演示了如何根据用户接口查询字段(正常放header中),设置当前culture&#xff0c;并获取当前culture的key value给用户提示 创建Resources文件夹&#xff0c;添加以下三个文件 其中ExceptionUnuse 是一个空的类&#xff0c;供IStringLocalizer使用&a…...

使用Java实现Oracle表结构转换为PostgreSQL的示例方案(AI)

核心代码 import java.sql.*; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map;public class OracleToPGConverter {// 类型映射表private static final Map<String, String> TYPE_MAPPING new HashMap<>()…...

win32汇编环境,网络编程入门之八

;在上一教程里&#xff0c;我们学习了简单的处理服务器返回的数据 ;在这一教程里&#xff0c;我们了解一下&#xff0c;当连接上网站后&#xff0c;应该发送什么数据过去的问题 ;这里有个简单的方式学习&#xff0c;以下是一个示例 ;我们上网的时候可以用谷歌浏览器&#xff0c…...

Java EE 进阶:MyBatis

MyBatis是一个优秀的持久化框架&#xff0c;用于简化JDBC的开发。 持久层就是持久化访问的层&#xff0c;就是数据访问层&#xff08;Dao&#xff09;&#xff0c;用于访问数据库的。 MyBatis使用的准备工作 创建项目&#xff0c;导入mybatis的启动依赖&#xff0c;mysql的驱…...

Linux驱动开发基础(can)

目录 1.can的介绍 2.can的硬件连接 2.1 CPU自带can控制器 2.2 CPU没有can控制器 3.电气属性 4.can的特点 5.can协议 5.1 can的种类 5.2 数据帧 5.2.1 标准数据帧格式 5.3.1 扩展数据帧格式 5.3 遥控帧 5.4 错误帧 5.5 过载帧 5.6 帧间隔 5.7 位填充 5.8 位时…...

Linux 命令行整理(完善中)

文件类 查看文件类 cat 用于连接文件并打印到标准输出设备上&#xff0c;可用于查看文件内容.(短文件) use:cat example.txtmore 分页的形式显示文件内容&#xff0c;适合查看较长的文件&#xff08;长&#xff09; use: more example.txtless 也是分页查看文件内容&#xff…...

回调方法传值汇总

<template v-slot"scope"><el-switch v-model"scope.row.open" change"(p1) > changeOpen(p1, scope.row)"></el-switch></template>公域流量 多选 selection-change“val > multipleSelection val”...

分享一个精灵图生成和拆分的实现

概述 精灵图&#xff08;Sprite&#xff09;是一种将多个小图像合并到单个图像文件中的技术&#xff0c;广泛应用于网页开发、游戏开发和UI设计中。在MapboxGL中&#xff0c;跟之配套的还有一个json文件用来记录图标的大小和位置。本文分享基于Node和sharp库实现精灵图的合并与…...

python中的min函数的key的用法 - abs绝对值

前言 继续上一章节提及的 Python 中 min() 函数的用法&#xff0c;包括其基本语法、处理列表、接收多个参数 这个章节将补充一些新的知识点例如: min函数中key的另一种用法abs绝对值 min(iterable, *iterables, keyNone, defaultNone) 知识点 key 参数 key 是一个可选参数…...

我开发的PDF转WORD免费工具

ZhouShengHuan 欢迎小伙伴使用&#xff5e;...

kubernetes高级实战

一、模拟企业环境进行一个实战部署 [rootmaster node]# kubectl apply -f pod-tomcat.yaml pod/tomcat-test created [rootmaster node]# kubectl get pods NAME READY STATUS RESTARTS AGE tomcat-test 2/2 Running 0 2s [rootmaster node]…...

IntelliJ 配置文件plugin.xml

在 IntelliJ IDEA 插件开发中&#xff0c;plugin.xml 是插件的配置文件&#xff0c;它包含了关于插件的所有基本信息、扩展点、依赖关系等。该文件使用 XML 格式进行定义。以下是 plugin.xml 中常见的元素及其用途&#xff1a; <idea-plugin><!-- 插件的基本信息 --&…...

《心理学与生活》2025最新网课答案

《心理学与生活》2025最新网课答案 文章目录 《心理学与生活》2025最新网课答案发展与教育单元测试情绪与情感单元测验人格与动机单元测试感知与记忆单元测试文化与社会单元测试 发展与教育单元测试 题数 20 棉花糖实验中哪些小孩长大后的表现更好&#xff08;&#xff09;。 …...

11 python 数据容器-字符串

一、什么是数据容器 举个例子&#xff0c;一个办公室里有一群牛马&#xff0c;他们都有自己的名字&#xff0c;如果没有容器的概念&#xff0c;那么我们用变量来存放他们的名字&#xff0c;比如&#xff1a; name1 "翠花" name2 "玛丽" name3 "二…...

2025.3.20总结

阅读&#xff1a;《时间贫穷》第二章&#xff0c;里面讲到&#xff0c;运动&#xff0c;多行善事&#xff0c;体验自然&#xff0c;都会增强自我效能感&#xff0c;是对抗时间焦虑的强有力的方式。 花时间运动是值得的&#xff0c;公司每周三都是运动周&#xff0c;把运动视作…...

鸿蒙NEXT开发问题大全(不断更新中.....)

目录 问题1&#xff1a;鸿蒙NEXT获取华为手机的udid ​问题2&#xff1a;[Fail]ExecuteCommand need connect-key? 问题3&#xff1a;测试时如何安装app包 问题1&#xff1a;鸿蒙NEXT开发获取华为手机的udid hdc -t "设备的序列号" shell bm get --udid 问题2&…...

【北京迅为】iTOP-RK3568开发板OpenHarmony系统南向驱动开发UART接口运作机制

瑞芯微RK3568芯片是一款定位中高端的通用型SOC&#xff0c;采用22nm制程工艺&#xff0c;搭载一颗四核Cortex-A55处理器和Mali G52 2EE 图形处理器。RK3568 支持4K 解码和 1080P 编码&#xff0c;支持SATA/PCIE/USB3.0 外围接口。RK3568内置独立NPU&#xff0c;可用于轻量级人工…...