mirror of
https://github.com/openstreetmap/mod_tile.git
synced 2025-08-12 02:41:14 +00:00
Added PID file path configurability (#282)
* Added PID file path configurability
This commit is contained in:
@ -1,6 +1,7 @@
|
|||||||
; BASIC AND SIMPLE CONFIGURATION:
|
; BASIC AND SIMPLE CONFIGURATION:
|
||||||
|
|
||||||
[renderd]
|
[renderd]
|
||||||
|
pid_file=/run/renderd/renderd.pid
|
||||||
stats_file=/run/renderd/renderd.stats
|
stats_file=/run/renderd/renderd.stats
|
||||||
socketname=/run/renderd/renderd.sock
|
socketname=/run/renderd/renderd.sock
|
||||||
num_threads=4
|
num_threads=4
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
; EXAMPLES FOR BASIC CONFIGURATION OPTIONS
|
; EXAMPLES FOR BASIC CONFIGURATION OPTIONS
|
||||||
|
|
||||||
[renderd]
|
[renderd]
|
||||||
|
pid_file=/run/renderd/renderd.pid
|
||||||
stats_file=/run/renderd/renderd.stats
|
stats_file=/run/renderd/renderd.stats
|
||||||
socketname=/run/renderd/renderd.sock
|
socketname=/run/renderd/renderd.sock
|
||||||
num_threads=4
|
num_threads=4
|
||||||
@ -11,6 +12,7 @@ tile_dir=/var/cache/renderd/tiles
|
|||||||
;ipport=7654
|
;ipport=7654
|
||||||
;num_threads=4
|
;num_threads=4
|
||||||
;tile_dir=rados://tiles/etc/ceph/ceph.conf
|
;tile_dir=rados://tiles/etc/ceph/ceph.conf
|
||||||
|
;pid_file=/run/renderd/renderd_rados.pid
|
||||||
;stats_file=/run/renderd/renderd.stats
|
;stats_file=/run/renderd/renderd.stats
|
||||||
|
|
||||||
;[renderd]
|
;[renderd]
|
||||||
@ -18,6 +20,7 @@ tile_dir=/var/cache/renderd/tiles
|
|||||||
;ipport=7654
|
;ipport=7654
|
||||||
;num_threads=8
|
;num_threads=8
|
||||||
;tile_dir=memcached://
|
;tile_dir=memcached://
|
||||||
|
;pid_file=/run/renderd/renderd_memcached.pid
|
||||||
;stats_file=/run/renderd/renderd.stats
|
;stats_file=/run/renderd/renderd.stats
|
||||||
|
|
||||||
; EXAMPLE FOR MAPNIK CONFIGURATION OPTION
|
; EXAMPLE FOR MAPNIK CONFIGURATION OPTION
|
||||||
|
@ -43,6 +43,7 @@ typedef struct {
|
|||||||
char *mapnik_font_dir;
|
char *mapnik_font_dir;
|
||||||
int mapnik_font_dir_recurse;
|
int mapnik_font_dir_recurse;
|
||||||
char * stats_filename;
|
char * stats_filename;
|
||||||
|
const char * pid_filename;
|
||||||
} renderd_config;
|
} renderd_config;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
|
@ -50,6 +50,8 @@
|
|||||||
#define XMLCONFIG_DEFAULT "default"
|
#define XMLCONFIG_DEFAULT "default"
|
||||||
// Maximum number of configurations that mod tile will allow
|
// Maximum number of configurations that mod tile will allow
|
||||||
#define XMLCONFIGS_MAX 10
|
#define XMLCONFIGS_MAX 10
|
||||||
|
// Default PID file path
|
||||||
|
#define PIDFILE "/run/renderd/renderd.pid"
|
||||||
|
|
||||||
// Mapnik input plugins (will need to adjust for 32 bit libs)
|
// Mapnik input plugins (will need to adjust for 32 bit libs)
|
||||||
#define MAPNIK_PLUGINS "/usr/local/lib64/mapnik/input"
|
#define MAPNIK_PLUGINS "/usr/local/lib64/mapnik/input"
|
||||||
|
12
src/daemon.c
12
src/daemon.c
@ -51,8 +51,6 @@
|
|||||||
#endif
|
#endif
|
||||||
// }
|
// }
|
||||||
|
|
||||||
#define PIDFILE "/run/renderd/renderd.pid"
|
|
||||||
|
|
||||||
#define PFD_LISTEN 0
|
#define PFD_LISTEN 0
|
||||||
#define PFD_EXIT_PIPE 1
|
#define PFD_EXIT_PIPE 1
|
||||||
#define PFD_SPECIAL_COUNT 2
|
#define PFD_SPECIAL_COUNT 2
|
||||||
@ -995,6 +993,9 @@ int main(int argc, char **argv)
|
|||||||
sprintf(buffer, "%s:stats_file", name);
|
sprintf(buffer, "%s:stats_file", name);
|
||||||
config_slaves[render_sec].stats_filename = iniparser_getstring(ini,
|
config_slaves[render_sec].stats_filename = iniparser_getstring(ini,
|
||||||
buffer, NULL);
|
buffer, NULL);
|
||||||
|
snprintf(buffer, sizeof(buffer), "%s:pid_file", name);
|
||||||
|
config_slaves[render_sec].pid_filename = iniparser_getstring(ini,
|
||||||
|
buffer, (char *) PIDFILE);
|
||||||
|
|
||||||
if (render_sec == active_slave) {
|
if (render_sec == active_slave) {
|
||||||
config.socketname = config_slaves[render_sec].socketname;
|
config.socketname = config_slaves[render_sec].socketname;
|
||||||
@ -1004,6 +1005,8 @@ int main(int argc, char **argv)
|
|||||||
config.tile_dir = config_slaves[render_sec].tile_dir;
|
config.tile_dir = config_slaves[render_sec].tile_dir;
|
||||||
config.stats_filename
|
config.stats_filename
|
||||||
= config_slaves[render_sec].stats_filename;
|
= config_slaves[render_sec].stats_filename;
|
||||||
|
config.pid_filename
|
||||||
|
= config_slaves[render_sec].pid_filename;
|
||||||
config.mapnik_plugins_dir = iniparser_getstring(ini,
|
config.mapnik_plugins_dir = iniparser_getstring(ini,
|
||||||
"mapnik:plugins_dir", (char *) MAPNIK_PLUGINS);
|
"mapnik:plugins_dir", (char *) MAPNIK_PLUGINS);
|
||||||
config.mapnik_font_dir = iniparser_getstring(ini,
|
config.mapnik_font_dir = iniparser_getstring(ini,
|
||||||
@ -1030,6 +1033,7 @@ int main(int argc, char **argv)
|
|||||||
|
|
||||||
g_logger(G_LOG_LEVEL_INFO, "config renderd: tile_dir=%s", config.tile_dir);
|
g_logger(G_LOG_LEVEL_INFO, "config renderd: tile_dir=%s", config.tile_dir);
|
||||||
g_logger(G_LOG_LEVEL_INFO, "config renderd: stats_file=%s", config.stats_filename);
|
g_logger(G_LOG_LEVEL_INFO, "config renderd: stats_file=%s", config.stats_filename);
|
||||||
|
g_logger(G_LOG_LEVEL_INFO, "config renderd: pid_file=%s", config.pid_filename);
|
||||||
g_logger(G_LOG_LEVEL_INFO, "config mapnik: plugins_dir=%s", config.mapnik_plugins_dir);
|
g_logger(G_LOG_LEVEL_INFO, "config mapnik: plugins_dir=%s", config.mapnik_plugins_dir);
|
||||||
g_logger(G_LOG_LEVEL_INFO, "config mapnik: font_dir=%s", config.mapnik_font_dir);
|
g_logger(G_LOG_LEVEL_INFO, "config mapnik: font_dir=%s", config.mapnik_font_dir);
|
||||||
g_logger(G_LOG_LEVEL_INFO, "config mapnik: font_dir_recurse=%d", config.mapnik_font_dir_recurse);
|
g_logger(G_LOG_LEVEL_INFO, "config mapnik: font_dir_recurse=%d", config.mapnik_font_dir_recurse);
|
||||||
@ -1057,6 +1061,8 @@ int main(int argc, char **argv)
|
|||||||
config_slaves[i].tile_dir);
|
config_slaves[i].tile_dir);
|
||||||
g_logger(G_LOG_LEVEL_INFO, "config renderd(%i): stats_file=%s", i,
|
g_logger(G_LOG_LEVEL_INFO, "config renderd(%i): stats_file=%s", i,
|
||||||
config_slaves[i].stats_filename);
|
config_slaves[i].stats_filename);
|
||||||
|
g_logger(G_LOG_LEVEL_INFO, "config renderd(%i): pid_file=%s", i,
|
||||||
|
config_slaves[i].pid_filename);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (iconf = 0; iconf < XMLCONFIGS_MAX; ++iconf) {
|
for (iconf = 0; iconf < XMLCONFIGS_MAX; ++iconf) {
|
||||||
@ -1098,7 +1104,7 @@ int main(int argc, char **argv)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* write pid file */
|
/* write pid file */
|
||||||
FILE *pidfile = fopen(PIDFILE, "w");
|
FILE *pidfile = fopen(config.pid_filename, "w");
|
||||||
|
|
||||||
if (pidfile) {
|
if (pidfile) {
|
||||||
(void) fprintf(pidfile, "%d\n", getpid());
|
(void) fprintf(pidfile, "%d\n", getpid());
|
||||||
|
Reference in New Issue
Block a user