首页 > 系统相关 >qt程序在Linux环境下写入系统日志及做成服务

qt程序在Linux环境下写入系统日志及做成服务

时间:2024-07-17 12:10:01浏览次数:17  
标签:LogDemo gcc9 qt project sh build Linux Debug 系统日志

一、将日志写入linux系统日志

1、添加头文件

#include <syslog.h>

2、写入日志

QString log="log to write";

syslog(LOG_INFO,"%s",log.toStdString().c_str());

 

二、将qt控制后程序做成linux服务

参考:https://blog.csdn.net/CLinuxF/article/details/129833008

1、在程序所在目录下创建脚本

如程序名为LogDemo,脚本名为LogDemo.sh.(名称随意)

LogDemo.sh

[root@pgg build-LogDemo-gcc9-Debug]# cat LogDemo.sh
#!/bin/sh
workdir=$(cd $(dirname $0); pwd)
export LD_LIBRARY_PATH=$workdir
cd $workdir
./LogDemo 

2、在/etc/systemd/system目录下创建服务文件

LogDemo.service
[Unit]
Description=LogDemo Service                                              
[Service]
Type=forking
#ExecStart=/project/build-LogDemo-gcc9-Debug/LogDemo
#ExecStop=/project/build-LogDemo-gcc9-Debug/LogDemo
ExecStart=/bin/bash /project/build-LogDemo-gcc9-Debug/LogDemo.sh
ExecStop=/bin/bash /project/build-LogDemo-gcc9-Debug/LogDemo.sh
StandardOutput=syslog
StandardError=inherit
[Install]
WantedBy=multi-user.target
注:
ExecStart=/project/build-LogDemo-gcc9-Debug/LogDemo ExecStop=/project/build-LogDemo-gcc9-Debug/LogDemo
这样直接写程序名好像也行(不用脚本了);

3、启动服务

systemctl start LogDemo.service
关闭服务
systemctl stop LogDemo.service
开机启动
systemctl enable LogDemo.service
 



标签:LogDemo,gcc9,qt,project,sh,build,Linux,Debug,系统日志
From: https://www.cnblogs.com/fengzhengfly/p/18307034

相关文章

  • 《深入探索 Linux 系统:从入门到精通的全面指南》
    更多内容,可前往官方网站进行浏览LinuxKernelDocumentation:        这是Linux内核的官方文档网站,包含了详细的内核开发和使用指南。非常适合需要深入了解Linux内核架构和功能的用户。CentOSOfficialDocumentation:这是CentOS的官方文档网站,提供了关......
  • [Linux+git+Gitee+Jenkins]持续集成实验安装配置详细
    首先理解持续集成原理,看懂并理解图1。图1持续集成原理结构图1中,版本控制服务器指远程代码仓库,本实验使用GitEE作为远程代码仓库;Jenkins自动化部署服务器为虚拟机,操作系统为Linux;服务器1…n为应用服务器,可使用自己物理机作为应用服务器。详......
  • Linux服务器配置信息查看
    lscpu ---查看CPU架构相关信息 Architecture:系统的CPU架构。CPUop-mode(s):CPU的操作模式,比如32位和64位。ByteOrder:字节序,通常是小端(LittleEndian)。CPU(s):系统中总的CPU核心数。On-lineCPU(s)list:在线的CPU核心列表。Th......
  • Linux搭建禅道
    1.安装方式选择Linux一键安装包2.下载禅道一键安装包:https://www.zentao.net/downloads.html 3.将安装包解压到/opt目录下进入/opt目录:cd/opt下载禅道一键安装包:wgethttps://www.zentao.net/dl/zentao/18.5/ZenTaoPMS.18.5.zbox_64.tar.gz解压禅道一键安装包:tar......
  • MarkText A simple and elegant markdown editor, available for Linux, macOS and Wi
    1、这个工具挺不错的,先上一张图,来自github页面截图:2、这个工具是开源的项目,开源地址:https://github.com/marktext官网地址:www.marktext.cc/三个平台都有:可以直接点上面的按钮,找到自己所用电脑的平台,就可以下载。也可以转到Githubreleasepage下载。3、安装:点击【安......
  • 【Linux驱动】sysfs系统文件修改666权限
     #无意中发现的方法#1.环境刚开始写法:staticssize_ttest_modem_show(.............staticssize_ttest_modem_store(...............staticCLASS_ATTR_RW(test_modem); staticintprobe{.......  modem_class=class_create(THIS_MODULE,"test_modem");......
  • 【python】PyQt5的窗口界面的各种交互逻辑实现,轻松掌控图形化界面程序
    ✨✨欢迎大家来到景天科技苑✨✨......
  • 「Mac&Linux」一次基于X和蒲公英组网的远程桌面尝试
    因为某些原因我必须在远程条件下使用带图形环境的Ubuntu工作。虽然说有向日葵和ToDesk这种远程控制工具,但是后者经常莫名其妙蹦个错误告诉我连不上网络(指的是Mac上的这个软件连不到它公司自己的网络,连我这个账号在ToDesk上有哪些在线设备都不知道),前者怎么说呢...我已经受够远程桌......
  • Linux常用命令
    一.常用命令1.whereis文件查询命令文件位置(如cd,ping)2.File查看文件的类型3.Who查看有谁登录该系统,当前在线的用户4.Pwd查看文件当前所在路径5.Clear清屏6.Uname-a查看内核信息7.Echo打印8.History显示所敲命令的历史,9.History-c清除所敲命令的历史10......
  • Linux调度器:进程优先级
    一、前言本文主要描述的是进程优先级这个概念。从用户空间来看,进程优先级就是nicevalue和schedulingpriority,对应到内核,有静态优先级、realtime优先级、归一化优先级和动态优先级等概念,我们希望能在第二章将这些相关的概念描述清楚。为了加深理解,在第三章我们给出了几个典型数......