CN108897659A - 修改日志级别的方法、装置及存储介质 - Google Patents
修改日志级别的方法、装置及存储介质 Download PDFInfo
- Publication number
- CN108897659A CN108897659A CN201810575218.8A CN201810575218A CN108897659A CN 108897659 A CN108897659 A CN 108897659A CN 201810575218 A CN201810575218 A CN 201810575218A CN 108897659 A CN108897659 A CN 108897659A
- Authority
- CN
- China
- Prior art keywords
- signal value
- rank
- log
- application program
- echo signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
- G06F11/3072—Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Physics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种修改日志级别的方法、装置及存储介质,属于计算机技术领域。所述方法包括:在第一应用程序中注册信号处理函数,当第一应用程序接收到命令行工具发送的目标信号值时,可以直接通过信号处理函数确定与目标信号值对应的目标日志级别,并将当前的日志级别修改为目标日志级别。由于命令行工具是操作系统自身上的工具,因此,通过本发明提供的修改日志级别的方法,用户仅需通过操作系统就可以实现对第一应用程序的日志级别的修改,避免了需要通过web浏览器才能实现对第一应用程序的日志级别的修改,提高了修改日志级别的效率。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种修改日志级别的方法、装置及存储介质。
背景技术
操作系统上安装的应用程序生成的每条日志信息都按照其重要程度设置有对应的等级,当用户需要查看应用程序的日志信息时,为了避免应用程序输出所有的日志信息,针对该应用程序设置有日志级别,以使应用程序只输出等级大于或等于该日志级别的日志信息。由于不同的场景,需要对应用程序设置不同的日志级别,因此,通常需要对应用程序的日志级别进行修改。
相关技术中,当web(网页)浏览器接收到日志级别设置指令时,向应用程序发送用于修改日志级别的http(HyperText Transfer Protocol,超文本传输协议) 请求,http请求中携带目标日志级别。当应用程序接收到http请求时,从http 请求中解析出目标日志级别,并将自身的日志级别设置为目标日志级别,以实现对日志级别的修改。其中,日志级别设置指令是由用户触发的。
在上述修改日志级别的方法中,应用程序必须在接收到web浏览器发送的 http请求时才会对日志级别进行修改,使得在修改应用程序的日志级别之前,需先建立应用程序与web浏览器之间的网络连接,导致修改日志级别的过程比较繁琐,降低了修改日志级别的效率。
发明内容
本发明实施例提供了一种修改日志级别的方法、装置及存储介质,可以解决相关技术中存在的问题。所述技术方案如下:
第一方面,提供了一种修改日志级别的方法,应用于第一应用程序,所述第一应用程序为操作系统上安装的多个应用程序中的一个,所述方法包括:
接收所述操作系统中的命令行工具发送的目标信号值,所述目标信号值是所述命令行工具在检测到日志级别修改指令时发送的,所述日志级别修改指令携带所述第一应用程序的标识和所述目标信号值;
通过所述第一应用程序中注册的信号处理函数确定与所述目标信号值对应的目标日志级别;
将当前的日志级别修改为所述目标日志级别。
可选地,所述通过所述第一应用程序中注册的信号处理函数确定与所述目标信号值对应的目标日志级别,包括:
判断所述目标信号值是否在合法信号值范围之内;
如果所述目标信号值在合法信号值范围之内,则根据所述目标信号值以及所述信号处理函数中存储的信号值与日志级别之间的对应关系,确定所述目标日志级别。
可选地,所述根据所述目标信号值以及所述信号处理函数中存储的信号值与日志级别之间的对应关系,确定所述目标日志级别之前,还包括:
当所述第一应用程序初次启动时,确定所述信号值与日志级别之间的对应关系;
根据所述信号值与日志级别之间的对应关系,注册所述信号处理函数。
可选地,所述根据所述信号值与日志级别之间的对应关系,注册所述信号处理函数之后,还包括:
生成日志级别修改辅助脚本,所述日志级别修改辅助脚本用于描述所述信号值与日志级别之间的对应关系。
可选地,所述日志级别修改辅助脚本还包括日志级别指示信息,所述日志级别指示信息用于描述所述第一应用程序当前的日志级别;
所述将当前的日志级别修改为所述目标日志级别之后,还包括:
根据所述目标日志级别更新所述日志级别指示信息。
第二方面,提供了一种修改日志级别的装置,应用于第一应用程序,所述第一应用程序为操作系统上安装的多个应用程序中的一个,所述装置包括:
接收模块,用于接收所述操作系统中的命令行工具发送的目标信号值,所述目标信号值是所述命令行工具在检测到日志级别修改指令时发送的,所述日志级别修改指令携带所述第一应用程序的标识和所述目标信号值;
确定模块,用于通过所述第一应用程序中注册的信号处理函数确定与所述目标信号值对应的目标日志级别;
修改模块,用于将当前的日志级别修改为所述目标日志级别。
可选地,所述确定模块,包括:
判断单元,用于判断所述目标信号值是否在合法信号值范围之内;
第一确定单元,用于如果所述目标信号值在合法信号值范围之内,则根据所述目标信号值以及所述信号处理函数中存储的信号值与日志级别之间的对应关系,确定所述目标日志级别。
可选地,所述确定模块还包括:
第二确定单元,用于当所述第一应用程序初次启动时,确定所述信号值与日志级别之间的对应关系;
注册单元,用于根据所述信号值与日志级别之间的对应关系,注册所述信号处理函数。
可选地,所述确定模块还包括:
生成单元,用于生成日志级别修改辅助脚本,所述日志级别修改辅助脚本用于描述所述信号值与日志级别之间的对应关系。
可选地,所述日志级别修改辅助脚本还包括日志级别指示信息,所述日志级别指示信息用于描述所述第一应用程序当前的日志级别;
所述装置还包括:
更新模块,用于根据所述目标日志级别更新所述日志级别指示信息。
第三方面,提供了一种修改日志级别的装置,所述装置包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述第一方面所述的任一项方法的步骤。
第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,所述指令被处理器执行时实现上述第一方面所述的任一项方法的步骤。
第五方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的任一方法的步骤。
本发明实施例提供的技术方案带来的有益效果是:
在本发明实施例中,在第一应用程序中注册信号处理函数,当第一应用程序接收到命令行工具发送的目标信号值时,可以直接通过信号处理函数确定与目标信号值对应的目标日志级别,并将当前的日志级别修改为目标日志级别。由于命令行工具是操作系统自身上的工具,因此,通过本发明实施例提供的修改日志级别的方法,用户仅需通过操作系统就可以实现对第一应用程序的日志级别的修改,避免了需要通过web浏览器才能实现对第一应用程序的日志级别的修改,提高了修改日志级别的效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种修改日志级别的方法流程图;
图2是本发明实施例提供的一种修改日志级别的装置框图;
图3是本发明实施例提供的一种终端结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
在对本发明实施例进行详细的解释说明之前,先对本发明实施例的应用场景予以介绍。对于操作系统上安装的任一应用程序,在该应用程序运行的过程中,该应用程序将产生日志信息,以记录该应用程序的运行状态。由于不同的日志信息的重要程度不同,因此,对于每条日志信息,都按照该日志信息的重要程度为其设置对应的等级。
比如,目前设置的日志信息的等级主要有TRACE、DEBUG、INFO、ERROR、FATAL等,每两个相邻的等级中后者的级别要高于前者。其中,当日志信息仅仅用于记录应用程序进入下一个进程,那么该日志信息的等级为TRACE。当日志信息用于记录对调试应用程序有帮助的事件,那么该日志信息的等级为 DEBUG。当日志信息用于记录应用程序运行过程中用户感兴趣的事件,那么该日志信息的等级为INFO。当日志信息用于记录应用程序运行过程出现的错误事件,但是该事件不影响应用程序的正常运行时,该日志信息的等级为ERROR。当日志信息用于记录应用程序运行过程出现的错误事件,且该事件影响应用程序的正常运行时,该日志信息的等级为FATAL。
正常情况下,应用程序的日志级别通常设置为ERROR,这样,当用户需要查看应用程序的日志信息时,仅仅输入等级为ERROR和等级为FATAL的日志信息,避免输出不必要的日志信息。但是,当应用程序出现异常时,等级为INFO 的日志信息可以帮助用户迅速确定出现异常的原因,这时就需要修改应用程序的日志级别,以使应用程序可以输出等级为INFO的日志信息。本发明实施例提供的方法就应用于如何对应用程序的日志级别进行修改。
图1是本发明实施例提供的一种修改日志级别的方法流程图,如图1所示,该方法包括如下步骤:
步骤101:第一应用程序接收操作系统中的命令行工具发送的目标信号值,目标信号值是命令行工具在检测到日志级别修改指令时发送的,日志级别修改指令携带第一应用程序的标识和目标信号值,第一应用程序为操作系统上安装的多个应用程序中的一个。
在本发明实施例中,操作系统中安装有多个应用程序和命令行工具,其中命令行工具用于向用户提供命令输入界面,当用户需要修改多个应用程序中的第一应用程序的日志级别时,可以通过命令行工具触发日志级别修改指令。也即是,当用户在命令输入界面中输入第一应用程序的标识和目标信号值时,命令行工具将检测到携带第一应用程序的标识和目标信号值的日志级别修改指令,然后根据第一应用程序的标识,将目标信号值发送给第一应用程序。
其中,操作系统可以为任何具有信号消息通知机制的操作系统,比如, Windows操作系统、Unix操作系统、Linux操作系统或者Mac操作系统(苹果公司提供的一种操作系统)等。当操作系统为Windows操作系统时,命令行工具可以为taskkill命令行工具。当操作系统为Unix或者Linux操作系统时,命令行工具可以为shell命令行工具。另外,第一应用程序的标识用于唯一标识第一应用程序,比如,第一应用程序的标识可以为第一应用程度的ID(Identity,身份标识)。
假设操作系统为Windows操作系统,命令行工具为taskkill命令行工具。当用户在taskkill命令行工具的命令输入界面中输入“kill—50第一应用程序的ID”时,taskkill将检测到日志级别修改指令。该日志级别修改指令中携带目标信号值50,还携带第一应用程序的ID。taskkill根据第一应用程序的ID向第一应用程序发送目标信号值50,以使第一应用程序接收到目标信号值50。
在本发明实施例中,为了使得第一应用程序可以根据用户输入的目标信号值对日志级别进行修改,在第一应用程序中注册有信号处理函数,该信号处理函数用于通过步骤102确定目标日志级别。
为了后续便于说明,在此对信号处理函数进行解释说明。信号处理函数是一种可以将信号值按照转换规则进行转换的函数。也即是,在信号处理函数中设置转换规则之后,当信号处理函数接收到信号值,信号处理函数将根据转换规则对该信号值进行转换。因此,在本发明实施例中,可以通过下述步骤102 利用信号处理函数对用户输入的目标信号值进行转换,以得到需要的日志级别。其中,信号处理函数也可以称为钩子函数,本发明实施例在此不做具体限定。
步骤102:通过第一应用程序中注册的信号处理函数确定与目标信号值对应的目标日志级别。
由于信号处理函数是一种可以将信号值按照转换规则进行转换的函数,因此,为了使得信号处理函数可以将目标信号值转换为需要的日志级别,在本发明实施例中,将信号处理函数的转换规则设置为信号值与日志级别之间的对应关系,也即是,信号处理函数中存储的信号值与日志级别之间的对应关系。因此,在一种可能的实现方式中,步骤102具体可以为:信号处理函数根据存储的信号值与日志级别之间的对应关系,确定与目标信号值对应的目标日志级别。
表1是本发明实施例提供的一种信号值与日志级别之间的对应关系,如表1 所示,信号值50对应的日志级别为TRACE,信号值51对应的日志级别为 DEBUG,信号值52对应的日志级别为INFO,信号值53对应的日志级别为 ERROR,信号值54对应的日志级别为FATAL。若目标信号值为51,那么信号处理函数确定出的目标日志级别为DEBUG。若目标信号值为50,那么信号处理函数确定出的目标日志级别为TRACE。
表1
信号值 | 日志级别 |
50 | TRACE |
51 | DEBUG |
52 | INFO |
53 | ERROR |
54 | FATAL |
另外,由于信号处理函数只对一定范围内的信号值进行处理,因此,在另一种可能的实现方式中,步骤102还可以为:判断目标信号值是否在合法信号值范围之内,如果目标信号值在合法信号值范围之内,则根据目标信号值以及信号处理函数中存储的信号值与日志级别之间的对应关系,确定目标日志级别。
其中,合法信号值范围为针对信号处理函数设置的合法信号值范围。比如,当信号值与日志级别之间的对应关系为表1所示的对应关系时,合法信号值范围可以设置为[50,54]。这样的话,如果目标信号值为51,那么信号处理函数确定出目标信号值在合法信号值范围之内,然后再对目标信号值进行处理。如果目标信号值为60,那么信号处理函数确定出目标信号值不在合法信号值范围之内,这种情况下,信号处理函数将不再对目标信号值进行处理。
需要说明的是,在本发明实施例中,可以在第一应用程序初次启动时,注册信号处理函数。也即是,当第一应用程序初次启动时,确定信号值与日志级别之间的对应关系,根据信号值与日志级别之间的对应关系,注册信号处理函数。
比如,当操作系统为Linux操作系统时,在第一应用程序初次启动时,第一应用程序可以注册信号处理函数为:void Handle LogL evel(int sig),其中,int sig 用于指示信号值,并在该信号处理函数中存储如下表1所示的对应关系。后续当信号处理函数接收到目标信号值时,可以根据void Handle LogL evel(目标信号值)和表1所示的对应关系,确定目标日志级别。
另外,在注册信号处理函数之后,如果用户能够查询信号值与日志级别的对应关系,那么用户就可以根据需要的日志级别来输入对应的目标信号值。因此,第一应用程序在注册信号处理函数之后,还可以生成日志级别修改辅助脚本,日志级别修改辅助脚本用于描述信号值与日志级别之间的对应关系。
进一步地,为了便于用户快速查询第一应用程序当前的日志级别,日志级别修改辅助脚本还包括日志级别指示信息,该日志级别指示信息用于描述第一应用程序当前的日志级别。
其中,日志级别修改辅助脚本中包括的内容的格式可以自定义,以提高日志级别修改辅助脚本的便利性。比如,当操作系统为Linux操作系统时,日志级别修改辅助脚本可以为如下格式:
#shell script to modify log level
#Current log Level=INFO
#Use commands below to change log level
Kill—50程序id#修改为TRACE等级
kill—51程序id#修改为DEBUG等级
kill—52程序id#修改为INFO等级
kill—53程序id#修改为ERROR等级
kill—54程序id#修改为FATA等级。
其中,“#shell script to modify log level”表示该脚本用于修改日志级别。“#Current log Level=INFO”表示当前的日志级别为INFO。“#Use commands below tochange log level”表示可以通过下述指令修改日志级别。“kill—50程序id# 修改为TRACE级别”表示当输入目标信号值50和程序id时,可以将程序id 对应的应用程序的日志级别设置为TRACE等级。“kill—51程序id#修改为 DEBUG等级”表示当输入目标信号值51和程序id时,可以将程序id对应的应用程序的日志级别设置为DEBUG等级。“kill—52程序id#修改为INFO 等级”表示当输入目标信号值52和程序id时,可以将程序id对应的应用程序的日志级别设置为INFO等级。其他依次类推,在此不再详细阐述。
步骤103:第一应用程序将当前的日志级别修改为目标日志级别。
当第一应用程序通过步骤102确定出目标日志级别时,可以将当前的日志级别修改为目标日志级别,以实现根据用户输入的目标信号值就可以修改第一应用程序的日志级别。
假设正常情况下,第一应用程序的日志级别通常设置为ERROR,当第一应用程序出现异常时,用户仅需通过操作系统中的命令行工具即可将第一应用程序的日志级别设置为INFO,以使用户在需要查询第一应用程序的日志信息时,第一应用程序输出等级大于或等于INFO的日志信息,便于用户快速查找到第一应用程序异常的原因。当第一应用程序恢复正常时,用户同样可以通过操作系统中的命令行工具即可将第一应用程序的日志级别重新设置为ERROR,也即是,将第一应用程序的日志级别调整回正常模式。因此,通过本发明实施例提供的修改日志级别的方法,可以在无需web浏览器的情况下,动态调整第一应用程序的日志级别,提高了修改日志级别的效率。且在动态调整第一应用程序的日志级别的过程中,无需第一应用程序重启,提高了修改日志级别的便利性。
另外,由步骤102可知,日志级别修改辅助脚本还可以包括日志级别指示信息,由于日志级别指示信息用于描述第一应用程序当前的日志级别,因此,当第一应用程序将当前的日志级别修改为目标日志级别之后,第一应用程序还可以根据目标日志级别更新日志级别指示信息。
在本发明实施例中,在第一应用程序中注册信号处理函数,当第一应用程序接收到命令行工具发送的目标信号值时,可以直接通过信号处理函数确定与目标信号值对应的目标日志级别,并将当前的日志级别修改为目标日志级别。由于命令行工具是操作系统自身上的工具,因此,通过本发明实施例提供的修改日志级别的方法,用户仅需通过操作系统就可以实现对第一应用程序的日志级别的修改,避免了需要通过web浏览器才能实现对第一应用程序的日志级别的修改,提高了修改日志级别的效率。
图2是本发明实施例提供的一种修改日志级别的装置框图,应用于第一应用程序,第一应用程序为操作系统上安装的多个应用程序中的一个。如图2所示,该装置200包括接收模块201、确定模块202和修改模块203。
接收模块201,用于接收操作系统中的命令行工具发送的目标信号值,目标信号值是命令行工具在检测到日志级别修改指令时发送的,日志级别修改指令携带第一应用程序的标识和目标信号值;
确定模块202,用于通过第一应用程序中注册的信号处理函数确定与目标信号值对应的目标日志级别;
修改模块203,用于将当前的日志级别修改为目标日志级别。
可选地,确定模块202,包括:
判断单元,用于判断目标信号值是否在合法信号值范围之内;
第一确定单元,用于如果目标信号值在合法信号值范围之内,则根据目标信号值以及信号处理函数中存储的信号值与日志级别之间的对应关系,确定目标日志级别。
可选地,确定模块202还包括:
第二确定单元,用于当第一应用程序初次启动时,确定信号值与日志级别之间的对应关系;
注册单元,用于根据信号值与日志级别之间的对应关系,注册信号处理函数。
可选地,确定模块202还包括:
生成单元,用于生成日志级别修改辅助脚本,日志级别修改辅助脚本用于描述信号值与日志级别之间的对应关系。
可选地,日志级别修改辅助脚本还包括日志级别指示信息,日志级别指示信息用于描述第一应用程序当前的日志级别;
装置200还包括:
更新模块,用于根据目标日志级别更新日志级别指示信息。
在本发明实施例中,在第一应用程序中注册信号处理函数,当第一应用程序接收到命令行工具发送的目标信号值时,可以直接通过信号处理函数确定与目标信号值对应的目标日志级别,并将当前的日志级别修改为目标日志级别。由于命令行工具是操作系统自身上的工具,因此,通过本发明实施例提供的修改日志级别的方法,用户仅需通过操作系统就可以实现对第一应用程序的日志级别的修改,避免了需要通过web浏览器才能实现对第一应用程序的日志级别的修改,提高了修改日志级别的效率。
图3示出了本发明一个示例性实施例提供的终端300的结构框图。该终端 300可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio LayerIV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端300还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。其中,终端300中部署有操作系统,操作系统中安装有多个应用程序和命令行工具,多个应用程序中的任一应用程序可以用于执行上述实施例提供的修改日志级别的方法。
通常,终端300包括有:处理器301和存储器302。
处理器301可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器301可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA (Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器301也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器301 可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器301还可以包括 AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器302可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器302还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器302中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器301所执行以实现本发明中方法实施例提供的修改日志级别的方法。
在一些实施例中,终端300还可选包括有:外围设备接口303和至少一个外围设备。处理器301、存储器302和外围设备接口303之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口303 相连。具体地,外围设备包括:射频电路304、触摸显示屏305、摄像头306、音频电路307、定位组件308和电源309中的至少一种。
外围设备接口303可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器301和存储器302。在一些实施例中,处理器301、存储器302和外围设备接口303被集成在同一芯片或电路板上;在一些其他实施例中,处理器301、存储器302和外围设备接口303中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路304用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路304通过电磁信号与通信网络以及其他通信设备进行通信。射频电路304将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路304包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路304可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及 5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路304还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏305用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏305是触摸显示屏时,显示屏305还具有采集在显示屏305的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器301进行处理。此时,显示屏305还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏305可以为一个,设置终端300的前面板;在另一些实施例中,显示屏 305可以为至少两个,分别设置在终端300的不同表面或呈折叠设计;在再一些实施例中,显示屏305可以是柔性显示屏,设置在终端300的弯曲表面上或折叠面上。甚至,显示屏305还可以设置成非矩形的不规则图形,也即异形屏。显示屏305可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件306用于采集图像或视频。可选地,摄像头组件306包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及 VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件306还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路307可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器301进行处理,或者输入至射频电路 304以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端300的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器301或射频电路304的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路307还可以包括耳机插孔。
定位组件308用于定位终端300的当前地理位置,以实现导航或LBS (LocationBased Service,基于位置的服务)。定位组件308可以是基于美国的 GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源309用于为终端300中的各个组件进行供电。电源309可以是交流电、直流电、一次性电池或可充电电池。当电源309包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端300还包括有一个或多个传感器310。该一个或多个传感器310包括但不限于:加速度传感器311、陀螺仪传感器312、压力传感器 313、指纹传感器314、光学传感器315以及接近传感器316。
加速度传感器311可以检测以终端300建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器311可以用于检测重力加速度在三个坐标轴上的分量。处理器301可以根据加速度传感器311采集的重力加速度信号,控制触摸显示屏305以横向视图或纵向视图进行用户界面的显示。加速度传感器311 还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器312可以检测终端300的机体方向及转动角度,陀螺仪传感器312可以与加速度传感器311协同采集用户对终端300的3D动作。处理器 301根据陀螺仪传感器312采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器313可以设置在终端300的侧边框和/或触摸显示屏305的下层。当压力传感器313设置在终端300的侧边框时,可以检测用户对终端300的握持信号,由处理器301根据压力传感器313采集的握持信号进行左右手识别或快捷操作。当压力传感器313设置在触摸显示屏305的下层时,由处理器301 根据用户对触摸显示屏305的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器314用于采集用户的指纹,由处理器301根据指纹传感器314 采集到的指纹识别用户的身份,或者,由指纹传感器314根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器301授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器314可以被设置终端300的正面、背面或侧面。当终端300上设置有物理按键或厂商Logo时,指纹传感器314可以与物理按键或厂商Logo集成在一起。
光学传感器315用于采集环境光强度。在一个实施例中,处理器301可以根据光学传感器315采集的环境光强度,控制触摸显示屏305的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏305的显示亮度;当环境光强度较低时,调低触摸显示屏305的显示亮度。在另一个实施例中,处理器301还可以根据光学传感器315采集的环境光强度,动态调整摄像头组件306的拍摄参数。
接近传感器316,也称距离传感器,通常设置在终端300的前面板。接近传感器316用于采集用户与终端300的正面之间的距离。在一个实施例中,当接近传感器316检测到用户与终端300的正面之间的距离逐渐变小时,由处理器 301控制触摸显示屏305从亮屏状态切换为息屏状态;当接近传感器316检测到用户与终端300的正面之间的距离逐渐变大时,由处理器301控制触摸显示屏 305从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图3中示出的结构并不构成对终端300的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
本申请实施例还提供了一种非临时性计算机可读存储介质,当所述存储介质中的指令由终端的处理器执行时,使得终端能够执行上述实施例提供的修改日志级别的方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例提供的修改日志级别的方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种修改日志级别的方法,应用于第一应用程序,所述第一应用程序为操作系统上安装的多个应用程序中的一个,其特征在于,所述方法包括:
接收所述操作系统中的命令行工具发送的目标信号值,所述目标信号值是所述命令行工具在检测到日志级别修改指令时发送的,所述日志级别修改指令携带所述第一应用程序的标识和所述目标信号值;
通过所述第一应用程序中注册的信号处理函数确定与所述目标信号值对应的目标日志级别;
将当前的日志级别修改为所述目标日志级别。
2.如权利要求1所述的方法,其特征在于,所述通过所述第一应用程序中注册的信号处理函数确定与所述目标信号值对应的目标日志级别,包括:
判断所述目标信号值是否在合法信号值范围之内;
如果所述目标信号值在合法信号值范围之内,则根据所述目标信号值以及所述信号处理函数中存储的信号值与日志级别之间的对应关系,确定所述目标日志级别。
3.如权利要求2所述的方法,其特征在于,所述根据所述目标信号值以及所述信号处理函数中存储的信号值与日志级别之间的对应关系,确定所述目标日志级别之前,还包括:
当所述第一应用程序初次启动时,确定所述信号值与日志级别之间的对应关系;
根据所述信号值与日志级别之间的对应关系,注册所述信号处理函数。
4.如权利要求3所述的方法,其特征在于,所述根据所述信号值与日志级别之间的对应关系,注册所述信号处理函数之后,还包括:
生成日志级别修改辅助脚本,所述日志级别修改辅助脚本用于描述所述信号值与日志级别之间的对应关系。
5.如权利要求4所述的方法,其特征在于,所述日志级别修改辅助脚本还包括日志级别指示信息,所述日志级别指示信息用于描述所述第一应用程序当前的日志级别;
所述将当前的日志级别修改为所述目标日志级别之后,还包括:
根据所述目标日志级别更新所述日志级别指示信息。
6.一种修改日志级别的装置,应用于第一应用程序,所述第一应用程序为操作系统上安装的多个应用程序中的一个,其特征在于,所述装置包括:
接收模块,用于接收所述操作系统中的命令行工具发送的目标信号值,所述目标信号值是所述命令行工具在检测到日志级别修改指令时发送的,所述日志级别修改指令携带所述第一应用程序的标识和所述目标信号值;
确定模块,用于通过所述第一应用程序中注册的信号处理函数确定与所述目标信号值对应的目标日志级别;
修改模块,用于将当前的日志级别修改为所述目标日志级别。
7.如权利要求6所述的装置,其特征在于,所述确定模块,包括:
判断单元,用于判断所述目标信号值是否在合法信号值范围之内;
第一确定单元,用于如果所述目标信号值在合法信号值范围之内,则根据所述目标信号值以及所述信号处理函数中存储的信号值与日志级别之间的对应关系,确定所述目标日志级别。
8.如权利要求7所述的装置,其特征在于,所述确定模块还包括:
第二确定单元,用于当所述第一应用程序初次启动时,确定所述信号值与日志级别之间的对应关系;
注册单元,用于根据所述信号值与日志级别之间的对应关系,注册所述信号处理函数。
9.如权利要求8所述的装置,其特征在于,所述确定模块还包括:
生成单元,用于生成日志级别修改辅助脚本,所述日志级别修改辅助脚本用于描述所述信号值与日志级别之间的对应关系。
10.如权利要求9所述的装置,其特征在于,所述日志级别修改辅助脚本还包括日志级别指示信息,所述日志级别指示信息用于描述所述第一应用程序当前的日志级别;
所述装置还包括:
更新模块,用于根据所述目标日志级别更新所述日志级别指示信息。
11.一种修改日志级别的装置,其特征在于,所述装置包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行权利要求1-5所述的任一项方法的步骤。
12.一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,其特征在于,所述指令被处理器执行时实现权利要求1-5所述的任一项方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810575218.8A CN108897659B (zh) | 2018-06-06 | 2018-06-06 | 修改日志级别的方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810575218.8A CN108897659B (zh) | 2018-06-06 | 2018-06-06 | 修改日志级别的方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108897659A true CN108897659A (zh) | 2018-11-27 |
CN108897659B CN108897659B (zh) | 2021-10-15 |
Family
ID=64343993
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810575218.8A Active CN108897659B (zh) | 2018-06-06 | 2018-06-06 | 修改日志级别的方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108897659B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110058935A (zh) * | 2019-04-26 | 2019-07-26 | 广州华多网络科技有限公司 | 日志级别调整方法、装置及系统、可读存储介质 |
CN110334071A (zh) * | 2019-05-30 | 2019-10-15 | 平安科技(深圳)有限公司 | log4j日志框架的属性配置方法、装置和计算机设备 |
CN111130905A (zh) * | 2019-12-31 | 2020-05-08 | 青梧桐有限责任公司 | 基于分布式集群的日志级别动态调整方法 |
CN111182066A (zh) * | 2019-12-31 | 2020-05-19 | 青梧桐有限责任公司 | 基于token认证的日志级别动态调整方法 |
CN111488230A (zh) * | 2019-01-29 | 2020-08-04 | 北京京东尚科信息技术有限公司 | 修改日志输出级别的方法、装置、电子设备及存储介质 |
CN113157570A (zh) * | 2021-04-07 | 2021-07-23 | 腾讯音乐娱乐科技(深圳)有限公司 | 确定触发主体信息的方法、设备及存储介质 |
CN113268274A (zh) * | 2021-05-18 | 2021-08-17 | 深圳市广和通无线股份有限公司 | 一种操作系统启动方法、装置、电子设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105843822A (zh) * | 2015-01-16 | 2016-08-10 | 北京神州泰岳软件股份有限公司 | 一种修改日志级别的方法和装置 |
CN106681891A (zh) * | 2015-11-05 | 2017-05-17 | 阿里巴巴集团控股有限公司 | 一种Java应用系统中调整日志级别的方法及装置 |
US20170168915A1 (en) * | 2015-12-11 | 2017-06-15 | International Business Machines Corporation | Dynamic trace level control |
CN107391355A (zh) * | 2017-07-25 | 2017-11-24 | 郑州云海信息技术有限公司 | 一种控制内核模块日志输出的方法与装置 |
CN107577577A (zh) * | 2017-09-13 | 2018-01-12 | 郑州云海信息技术有限公司 | 日志分级打印的方法、装置、系统及计算机可读存储介质 |
CN107729506A (zh) * | 2017-10-23 | 2018-02-23 | 郑州云海信息技术有限公司 | 一种存储介质和日志级别的动态调整方法、装置及系统 |
CN107947954A (zh) * | 2016-10-12 | 2018-04-20 | 腾讯科技(深圳)有限公司 | 动态调整日志级别的系统、方法及服务器 |
-
2018
- 2018-06-06 CN CN201810575218.8A patent/CN108897659B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105843822A (zh) * | 2015-01-16 | 2016-08-10 | 北京神州泰岳软件股份有限公司 | 一种修改日志级别的方法和装置 |
CN106681891A (zh) * | 2015-11-05 | 2017-05-17 | 阿里巴巴集团控股有限公司 | 一种Java应用系统中调整日志级别的方法及装置 |
US20170168915A1 (en) * | 2015-12-11 | 2017-06-15 | International Business Machines Corporation | Dynamic trace level control |
CN107947954A (zh) * | 2016-10-12 | 2018-04-20 | 腾讯科技(深圳)有限公司 | 动态调整日志级别的系统、方法及服务器 |
CN107391355A (zh) * | 2017-07-25 | 2017-11-24 | 郑州云海信息技术有限公司 | 一种控制内核模块日志输出的方法与装置 |
CN107577577A (zh) * | 2017-09-13 | 2018-01-12 | 郑州云海信息技术有限公司 | 日志分级打印的方法、装置、系统及计算机可读存储介质 |
CN107729506A (zh) * | 2017-10-23 | 2018-02-23 | 郑州云海信息技术有限公司 | 一种存储介质和日志级别的动态调整方法、装置及系统 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111488230A (zh) * | 2019-01-29 | 2020-08-04 | 北京京东尚科信息技术有限公司 | 修改日志输出级别的方法、装置、电子设备及存储介质 |
CN110058935A (zh) * | 2019-04-26 | 2019-07-26 | 广州华多网络科技有限公司 | 日志级别调整方法、装置及系统、可读存储介质 |
CN110058935B (zh) * | 2019-04-26 | 2022-07-22 | 广州方硅信息技术有限公司 | 日志级别调整方法、装置及系统、可读存储介质 |
CN110334071A (zh) * | 2019-05-30 | 2019-10-15 | 平安科技(深圳)有限公司 | log4j日志框架的属性配置方法、装置和计算机设备 |
WO2020238049A1 (zh) * | 2019-05-30 | 2020-12-03 | 平安科技(深圳)有限公司 | log4j日志框架的属性配置方法、装置和计算机设备 |
CN111130905A (zh) * | 2019-12-31 | 2020-05-08 | 青梧桐有限责任公司 | 基于分布式集群的日志级别动态调整方法 |
CN111182066A (zh) * | 2019-12-31 | 2020-05-19 | 青梧桐有限责任公司 | 基于token认证的日志级别动态调整方法 |
CN113157570A (zh) * | 2021-04-07 | 2021-07-23 | 腾讯音乐娱乐科技(深圳)有限公司 | 确定触发主体信息的方法、设备及存储介质 |
CN113268274A (zh) * | 2021-05-18 | 2021-08-17 | 深圳市广和通无线股份有限公司 | 一种操作系统启动方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108897659B (zh) | 2021-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108897659A (zh) | 修改日志级别的方法、装置及存储介质 | |
CN110798790B (zh) | 麦克风异常检测方法、装置及存储介质 | |
CN110413501B (zh) | 浏览器兼容性测试方法、装置、系统及可读存储介质 | |
CN110827820B (zh) | 语音唤醒方法、装置、设备、计算机存储介质及车辆 | |
CN109061481A (zh) | 电池的荷电状态确定方法、装置及存储介质 | |
US11315534B2 (en) | Method, apparatus, terminal and storage medium for mixing audio | |
CN110784370B (zh) | 设备测试的方法、装置、电子设备及介质 | |
CN108909717B (zh) | 电动汽车的轻量化水平确定方法、装置及存储介质 | |
CN111241499A (zh) | 应用程序登录的方法、装置、终端及存储介质 | |
CN111191227A (zh) | 阻止恶意代码执行的方法和装置 | |
CN112612539B (zh) | 数据模型卸载方法、装置、电子设备及存储介质 | |
CN109308265A (zh) | 生成反向测试用例的方法和装置 | |
CN109977570A (zh) | 车身噪声确定方法、装置及存储介质 | |
CN111797017B (zh) | 存储日志的方法、装置、测试设备及存储介质 | |
CN111881423A (zh) | 限制功能使用授权方法、装置、系统 | |
CN110569064A (zh) | 接口标识生成方法、装置、设备及存储介质 | |
CN111145723B (zh) | 转换音频的方法、装置、设备以及存储介质 | |
CN110708582B (zh) | 同步播放的方法、装置、电子设备及介质 | |
CN111294320B (zh) | 数据转换的方法和装置 | |
CN109078331B (zh) | 模拟按键检测方法、装置、计算机设备及存储介质 | |
CN113408989A (zh) | 汽车数据的比对方法、装置及计算机存储介质 | |
CN112596810A (zh) | 加载提示信息显示方法、装置、电子设备及存储介质 | |
KR102651730B1 (ko) | 미디어 데이터의 재생 방법, 장치, 시스템, 기기 및 저장 매체 | |
CN111916105A (zh) | 语音信号处理方法、装置、电子设备及存储介质 | |
CN112990421A (zh) | 优化深度学习网络的运行过程的方法、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230524 Address after: 518000 Room 201, building A, 1 front Bay Road, Shenzhen Qianhai cooperation zone, Shenzhen, Guangdong Patentee after: TENCENT MUSIC ENTERTAINMENT (SHENZHEN) Co.,Ltd. Address before: 518000 Room 201, building A, 1 front Bay Road, Shenzhen Qianhai cooperation zone, Shenzhen, Guangdong Patentee before: TENCENT MUSIC ENTERTAINMENT TECHNOLOGY (SHENZHEN) Co.,Ltd. |
|
TR01 | Transfer of patent right |