mirror of
https://github.com/openstreetmap/mod_tile.git
synced 2025-08-08 08:24:25 +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:
|
||||
|
||||
[renderd]
|
||||
pid_file=/run/renderd/renderd.pid
|
||||
stats_file=/run/renderd/renderd.stats
|
||||
socketname=/run/renderd/renderd.sock
|
||||
num_threads=4
|
||||
|
@ -1,6 +1,7 @@
|
||||
; EXAMPLES FOR BASIC CONFIGURATION OPTIONS
|
||||
|
||||
[renderd]
|
||||
pid_file=/run/renderd/renderd.pid
|
||||
stats_file=/run/renderd/renderd.stats
|
||||
socketname=/run/renderd/renderd.sock
|
||||
num_threads=4
|
||||
@ -11,6 +12,7 @@ tile_dir=/var/cache/renderd/tiles
|
||||
;ipport=7654
|
||||
;num_threads=4
|
||||
;tile_dir=rados://tiles/etc/ceph/ceph.conf
|
||||
;pid_file=/run/renderd/renderd_rados.pid
|
||||
;stats_file=/run/renderd/renderd.stats
|
||||
|
||||
;[renderd]
|
||||
@ -18,6 +20,7 @@ tile_dir=/var/cache/renderd/tiles
|
||||
;ipport=7654
|
||||
;num_threads=8
|
||||
;tile_dir=memcached://
|
||||
;pid_file=/run/renderd/renderd_memcached.pid
|
||||
;stats_file=/run/renderd/renderd.stats
|
||||
|
||||
; EXAMPLE FOR MAPNIK CONFIGURATION OPTION
|
||||
|
@ -43,6 +43,7 @@ typedef struct {
|
||||
char *mapnik_font_dir;
|
||||
int mapnik_font_dir_recurse;
|
||||
char * stats_filename;
|
||||
const char * pid_filename;
|
||||
} renderd_config;
|
||||
|
||||
typedef struct {
|
||||
|
@ -50,6 +50,8 @@
|
||||
#define XMLCONFIG_DEFAULT "default"
|
||||
// Maximum number of configurations that mod tile will allow
|
||||
#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)
|
||||
#define MAPNIK_PLUGINS "/usr/local/lib64/mapnik/input"
|
||||
|
12
src/daemon.c
12
src/daemon.c
@ -51,8 +51,6 @@
|
||||
#endif
|
||||
// }
|
||||
|
||||
#define PIDFILE "/run/renderd/renderd.pid"
|
||||
|
||||
#define PFD_LISTEN 0
|
||||
#define PFD_EXIT_PIPE 1
|
||||
#define PFD_SPECIAL_COUNT 2
|
||||
@ -995,6 +993,9 @@ int main(int argc, char **argv)
|
||||
sprintf(buffer, "%s:stats_file", name);
|
||||
config_slaves[render_sec].stats_filename = iniparser_getstring(ini,
|
||||
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) {
|
||||
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.stats_filename
|
||||
= config_slaves[render_sec].stats_filename;
|
||||
config.pid_filename
|
||||
= config_slaves[render_sec].pid_filename;
|
||||
config.mapnik_plugins_dir = iniparser_getstring(ini,
|
||||
"mapnik:plugins_dir", (char *) MAPNIK_PLUGINS);
|
||||
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: 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: font_dir=%s", config.mapnik_font_dir);
|
||||
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);
|
||||
g_logger(G_LOG_LEVEL_INFO, "config renderd(%i): stats_file=%s", i,
|
||||
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) {
|
||||
@ -1098,7 +1104,7 @@ int main(int argc, char **argv)
|
||||
}
|
||||
|
||||
/* write pid file */
|
||||
FILE *pidfile = fopen(PIDFILE, "w");
|
||||
FILE *pidfile = fopen(config.pid_filename, "w");
|
||||
|
||||
if (pidfile) {
|
||||
(void) fprintf(pidfile, "%d\n", getpid());
|
||||
|
Reference in New Issue
Block a user