首先说一下Ubuntu下看门狗程序,这个程序是用在我项目中的,用来保证核心程序能够实现崩溃自启动,这对于程序的稳定运行至关重要。
话不多少,直接上代码:
(1)新建看门狗程序 daemon_upload.c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <dirent.h>
#include <sys/types.h>
#include <ctype.h>
#include <string.h>
#include <unistd.h>
#include <signal.h>
#include <sys/param.h>
#include <sys/stat.h>
#define READ_BUF_SIZE 1024
#define pidName "/home/node/nodeClient/Icardclient1/uploadFile.js"
char pid[10];
void init_daemon(void);//守护进程初始化函数
int get_pid(void);
main()
{
FILE *fp;
time_t t;
init_daemon();//初始化为Daemon
while(1)//每隔一分钟向test.log报告运行状态
{
sleep(5);//睡眠5秒钟
int i = 0;
i = get_pid();
if (i == 0 )
{
if((fp=fopen("/home/node/nodelog/uploadFile.log","a")) >=0)
{
t=time(0);
fprintf(