Commit ba09355f authored by Matteo Quintiliani's avatar Matteo Quintiliani
Browse files

Adapted call for nmxp_log() and modified means of option -v


git-svn-id: file:///home/quintiliani/svncopy/nmxptool/trunk@472 3cd66e75-5955-46cb-a940-c26e5fc5497d
parent 599989ac
Loading
Loading
Loading
Loading
+32 −34
Original line number Diff line number Diff line
@@ -7,7 +7,7 @@
 * 	Istituto Nazionale di Geofisica e Vulcanologia - Italy
 *	quintiliani@ingv.it
 *
 * $Id: nmxptool.c,v 1.87 2007-11-21 13:12:49 mtheo Exp $
 * $Id: nmxptool.c,v 1.88 2007-11-22 11:13:05 mtheo Exp $
 *
 */

@@ -140,7 +140,7 @@ int main (int argc, char **argv) {
#endif

    /* Default is normal output */
    nmxp_log(-1, 0);
    nmxp_log(NMXP_LOG_SET, NMXP_LOG_D_NULL);

    /* Initialize params from argument values */
    if(nmxptool_getopt_long(argc, argv, &params) != 0) {
@@ -167,9 +167,7 @@ int main (int argc, char **argv) {
	    return 1;
	}

	if(params.flag_verbose) {
	    nmxp_log(-1, 2);
	}
	nmxp_log(NMXP_LOG_SET, params.verbose_level);

	/* List available channels on server */
	if(params.flag_listchannels) {
@@ -191,12 +189,12 @@ int main (int argc, char **argv) {

    /* Check if some channel already exists */
    if(channelList_subset->number <= 0) {
	nmxp_log(NMXP_LOG_ERR, 0, "Channels not found!\n");
	nmxp_log(NMXP_LOG_ERR, NMXP_LOG_D_CHANNEL, "Channels not found!\n");
	return 1;
    } else {
	nmxp_chan_print_channelList(channelList_subset);

	nmxp_log(NMXP_LOG_NORM, 1, "Init channelListSeq.\n");
	nmxp_log(NMXP_LOG_NORM, NMXP_LOG_D_CHANNEL, "Init channelListSeq.\n");

	/* init channelListSeq */
	channelListSeq = (NMXPTOOL_CHAN_SEQ *) malloc(sizeof(NMXPTOOL_CHAN_SEQ) * channelList_subset->number);
@@ -209,19 +207,19 @@ int main (int argc, char **argv) {
	}

#ifdef HAVE_LIBMSEED
	nmxp_log(NMXP_LOG_NORM, 1, "Init mini-SEED record list.\n");
	nmxp_log(NMXP_LOG_NORM, NMXP_LOG_D_EXTRA, "Init mini-SEED record list.\n");

	/* Init mini-SEED record list */
	for(i_chan = 0; i_chan < channelList_subset->number; i_chan++) {

	    nmxp_log(NMXP_LOG_NORM, 1, "Init mini-SEED record for %s\n", channelList_subset->channel[i_chan].name);
	    nmxp_log(NMXP_LOG_NORM, NMXP_LOG_D_EXTRA, "Init mini-SEED record for %s\n", channelList_subset->channel[i_chan].name);

	    msr_list_chan[i_chan] = msr_init(NULL);

	    /* Separate station_code and channel_code */
	    if(nmxp_chan_cpy_sta_chan(channelList_subset->channel[i_chan].name, station_code, channel_code, network_code)) {

		nmxp_log(NMXP_LOG_NORM, 1, "%s.%s.%s\n", NETCODE_OR_CURRENT_NETWORK, station_code, channel_code);
		nmxp_log(NMXP_LOG_NORM, NMXP_LOG_D_EXTRA, "%s.%s.%s\n", NETCODE_OR_CURRENT_NETWORK, station_code, channel_code);

		strcpy(msr_list_chan[i_chan]->network, NETCODE_OR_CURRENT_NETWORK);
		strcpy(msr_list_chan[i_chan]->station, station_code);
@@ -231,7 +229,7 @@ int main (int argc, char **argv) {
		msr_list_chan[i_chan]->encoding = DE_STEIM1;  /* Steim 1 compression */

	    } else {
		nmxp_log(NMXP_LOG_ERR, 0, "Channels %s error in format!\n");
		nmxp_log(NMXP_LOG_ERR, NMXP_LOG_D_CHANNEL, "Channels %s error in format!\n");
		return 1;
	    }

@@ -246,7 +244,7 @@ int main (int argc, char **argv) {
	channelList = NULL;
    }

    nmxp_log(NMXP_LOG_NORM, 1, "Starting comunication.\n");
    nmxp_log(NMXP_LOG_NORM, NMXP_LOG_D_CONNFLOW, "Starting comunication.\n");

    /* TODO condition starting DAP or PDS */
    if( (params.start_time != 0   &&   params.end_time != 0)
@@ -265,25 +263,25 @@ int main (int argc, char **argv) {

	/* DAP Step 1: Open a socket */
	if( (naqssock = nmxp_openSocket(params.hostname, params.portnumberdap)) == NMXP_SOCKET_ERROR) {
	    nmxp_log(NMXP_LOG_ERR, 0, "Error opening socket!\n");
	    nmxp_log(NMXP_LOG_ERR, NMXP_LOG_D_CONNFLOW, "Error opening socket!\n");
	    return 1;
	}

	/* DAP Step 2: Read connection time */
	if(nmxp_readConnectionTime(naqssock, &connection_time) != NMXP_SOCKET_OK) {
	    nmxp_log(NMXP_LOG_ERR, 0, "Error reading connection time from server!\n");
	    nmxp_log(NMXP_LOG_ERR, NMXP_LOG_D_CONNFLOW, "Error reading connection time from server!\n");
	    return 1;
	}

	/* DAP Step 3: Send a ConnectRequest */
	if(nmxp_sendConnectRequest(naqssock, params.datas_username, params.datas_password, connection_time) != NMXP_SOCKET_OK) {
	    nmxp_log(NMXP_LOG_ERR, 0, "Error sending connect request!\n");
	    nmxp_log(NMXP_LOG_ERR, NMXP_LOG_D_CONNFLOW, "Error sending connect request!\n");
	    return 1;
	}

	/* DAP Step 4: Wait for a Ready message */
	if(nmxp_waitReady(naqssock) != NMXP_SOCKET_OK) {
	    nmxp_log(NMXP_LOG_ERR, 0, "Error waiting Ready message!\n");
	    nmxp_log(NMXP_LOG_ERR, NMXP_LOG_D_CONNFLOW, "Error waiting Ready message!\n");
	    return 1;
	}

@@ -291,7 +289,7 @@ int main (int argc, char **argv) {

	while(exitdapcondition) {

	nmxp_log(NMXP_LOG_NORM, 1, "start_time = %d - end_time = %d\n", params.start_time, params.end_time);
	nmxp_log(NMXP_LOG_NORM, NMXP_LOG_D_EXTRA, "start_time = %d - end_time = %d\n", params.start_time, params.end_time);

	/* Start loop for sending requests */
	i_chan=0;
@@ -327,7 +325,7 @@ int main (int argc, char **argv) {

		    outfile = fopen(filename, "w");
		    if(!outfile) {
			nmxp_log(NMXP_LOG_ERR, 0, "Can not to open file %s!", filename);
			nmxp_log(NMXP_LOG_ERR, NMXP_LOG_D_EXTRA, "Can not to open file %s!", filename);
		    }
		}

@@ -350,7 +348,7 @@ int main (int argc, char **argv) {

		    data_seed.outfile_mseed = fopen(data_seed.filename_mseed, "w");
		    if(!data_seed.outfile_mseed) {
			nmxp_log(NMXP_LOG_ERR, 0, "Can not to open file %s!", data_seed.filename_mseed);
			nmxp_log(NMXP_LOG_ERR, NMXP_LOG_D_EXTRA, "Can not to open file %s!", data_seed.filename_mseed);
		    }
		}
#endif
@@ -372,7 +370,7 @@ int main (int argc, char **argv) {

		/* DAP Step 6: Receive Data until receiving a Ready message */
		ret = nmxp_receiveMessage(naqssock, &type, &buffer, &length, 0, &recv_errno);
		nmxp_log(NMXP_LOG_NORM, 1, "ret = %d, type = %d\n", ret, type);
		nmxp_log(NMXP_LOG_NORM, NMXP_LOG_D_CONNFLOW, "ret = %d, type = %d\n", ret, type);

		while(ret == NMXP_SOCKET_OK   &&    type != NMXP_MSG_READY) {

@@ -396,7 +394,7 @@ int main (int argc, char **argv) {
			    if(nmxptool_check_and_log_gap(pd->time, channelListSeq[cur_chan].last_time, GAP_TOLLERANCE, pd->station, pd->channel)) {
				channelListSeq[cur_chan].x_1 = 0;
				nmxp_data_to_str(str_pd_time, pd->time);
				nmxp_log(NMXP_LOG_WARN, 0, "%s.%s x0 set to zero at %s!\n", pd->station, pd->channel, str_pd_time);
				nmxp_log(NMXP_LOG_WARN, NMXP_LOG_D_EXTRA, "%s.%s x0 set to zero at %s!\n", pd->station, pd->channel, str_pd_time);
			    }
			}
		    }
@@ -440,7 +438,7 @@ int main (int argc, char **argv) {

		    /* Receive Data */
		    ret = nmxp_receiveMessage(naqssock, &type, &buffer, &length, 0, &recv_errno);
		    nmxp_log(NMXP_LOG_NORM, 1, "ret = %d, type = %d\n", ret, type);
		    nmxp_log(NMXP_LOG_NORM, NMXP_LOG_D_CONNFLOW, "ret = %d, type = %d\n", ret, type);
		}

		if(params.flag_writefile  &&  outfile) {
@@ -467,7 +465,7 @@ int main (int argc, char **argv) {
	    if(time_to_sleep >= 0) {
		sleep(time_to_sleep);
	    } else {
		nmxp_log(NMXP_LOG_ERR, 0, "time to sleep %dsec.\n", time_to_sleep);
		nmxp_log(NMXP_LOG_ERR, NMXP_LOG_D_CONNFLOW, "time to sleep %d sec.\n", time_to_sleep);
		sleep(3);
	    }
	    params.start_time = params.end_time;
@@ -566,9 +564,9 @@ int main (int argc, char **argv) {

	    data_seed.outfile_mseed = fopen(data_seed.filename_mseed, "w");
	    if(!data_seed.outfile_mseed) {
		nmxp_log(NMXP_LOG_ERR, 0, "Can not to open file %s!", data_seed.filename_mseed);
		nmxp_log(NMXP_LOG_ERR, NMXP_LOG_D_EXTRA, "Can not to open file %s!", data_seed.filename_mseed);
	    } else {
		nmxp_log(NMXP_LOG_NORM, 1, "Opened file %s!\n", data_seed.filename_mseed);
		nmxp_log(NMXP_LOG_NORM, NMXP_LOG_D_EXTRA, "Opened file %s!\n", data_seed.filename_mseed);
	    }
	}
#endif
@@ -592,7 +590,7 @@ int main (int argc, char **argv) {
		// TODO
		exitpdscondition = 1;
	    } else {
		nmxp_log(NMXP_LOG_ERR, 0, "Error receiving data. pd=%p recv_errno=%d\n", pd, recv_errno);
		nmxp_log(NMXP_LOG_ERR, NMXP_LOG_D_CONNFLOW, "Error receiving data. pd=%p recv_errno=%d\n", pd, recv_errno);
		exitpdscondition = 0;
	    }

@@ -623,7 +621,7 @@ int main (int argc, char **argv) {
			timeout_for_channel = nmxp_data_gmtime_now() - channelListSeq[to_cur_chan].last_time_call_raw_stream;
			if(channelListSeq[to_cur_chan].last_time_call_raw_stream != 0
				&& timeout_for_channel >= params.timeoutrecv) {
			    nmxp_log(NMXP_LOG_WARN, 0, "Timeout for channel %s (%d sec.)\n",
			    nmxp_log(NMXP_LOG_WARN, NMXP_LOG_D_DOD, "Timeout for channel %s (%d sec.)\n",
				    channelList_subset->channel[to_cur_chan].name, timeout_for_channel);
			    nmxp_raw_stream_manage(&(channelListSeq[to_cur_chan].raw_stream_buffer), NULL, p_func_pd, n_func_pd);
			    channelListSeq[to_cur_chan].last_time_call_raw_stream = nmxp_data_gmtime_now();
@@ -643,7 +641,7 @@ int main (int argc, char **argv) {
			if(nmxptool_check_and_log_gap(pd->time, channelListSeq[cur_chan].last_time, GAP_TOLLERANCE, pd->station, pd->channel)) {
			    channelListSeq[cur_chan].x_1 = 0;
			    nmxp_data_to_str(str_pd_time, pd->time);
			    nmxp_log(NMXP_LOG_WARN, 0, "%s.%s x0 set to zero at %s!\n", pd->station, pd->channel, str_pd_time);
			    nmxp_log(NMXP_LOG_WARN, NMXP_LOG_D_EXTRA, "%s.%s x0 set to zero at %s!\n", pd->station, pd->channel, str_pd_time);
			}
		    }
		}
@@ -764,7 +762,7 @@ static void flushing_raw_data_stream() {
    if(params.stc == -1) {
	to_cur_chan = 0;
	while(to_cur_chan < channelList_subset->number) {
	    nmxp_log(NMXP_LOG_WARN, 0, "Flushing data for channel %s\n",
	    nmxp_log(NMXP_LOG_WARN, NMXP_LOG_D_ANY, "Flushing data for channel %s\n",
		    channelList_subset->channel[to_cur_chan].name);
	    nmxp_raw_stream_manage(&(channelListSeq[to_cur_chan].raw_stream_buffer), NULL, p_func_pd, n_func_pd);
	    to_cur_chan++;
@@ -775,7 +773,7 @@ static void flushing_raw_data_stream() {
/* Do any needed cleanup and exit */
static void clientShutdown(int sig) {

    nmxp_log(NMXP_LOG_NORM, 0, "Program interrupted!\n");
    nmxp_log(NMXP_LOG_NORM, NMXP_LOG_D_ANY, "Program interrupted!\n");

    flushing_raw_data_stream();

@@ -854,7 +852,7 @@ int nmxptool_write_miniseed(NMXP_DATA_PROCESS *pd) {
	ret = nmxp_data_msr_pack(pd, &data_seed, msr_list_chan[cur_chan]);

    } else {
	nmxp_log(NMXP_LOG_ERR, 0, "Key %d not found in channelList_subset!\n", pd->key);
	nmxp_log(NMXP_LOG_ERR, NMXP_LOG_D_CHANNEL, "Key %d not found in channelList_subset!\n", pd->key);
    }
    return ret;
}
@@ -865,7 +863,7 @@ int nmxptool_print_seq_no(NMXP_DATA_PROCESS *pd) {
    char str_time[200];
    nmxp_data_to_str(str_time, pd->time);

    nmxp_log(NMXP_LOG_NORM_NO, 0, "Process %s.%s.%s %2d %d %d %s %dpts lat. %.1fs\n",
    nmxp_log(NMXP_LOG_NORM_NO, NMXP_LOG_D_ANY, "Process %s.%s.%s %2d %d %d %s %dpts lat. %.1fs\n",
	    pd->network,
	    pd->station,
	    pd->channel,
@@ -902,10 +900,10 @@ int nmxptool_check_and_log_gap(double time1, double time2, const double gap_toll
    nmxp_data_to_str(str_time1, time1);
    nmxp_data_to_str(str_time2, time2);
    if(gap > gap_tollerance) {
	nmxp_log(NMXP_LOG_ERR, 0, "Gap %.2f sec. for %s.%s from %s to %s!\n", gap, station, channel, str_time2, str_time1);
	nmxp_log(NMXP_LOG_ERR, NMXP_LOG_D_GAP, "Gap %.2f sec. for %s.%s from %s to %s!\n", gap, station, channel, str_time2, str_time1);
	ret = 1;
    } else if (gap < -gap_tollerance) {
	nmxp_log(NMXP_LOG_ERR, 0, "Overlap %.2f sec. for %s.%s from %s to %s!\n", gap, station, channel, str_time1, str_time2);
	nmxp_log(NMXP_LOG_ERR, NMXP_LOG_D_GAP, "Overlap %.2f sec. for %s.%s from %s to %s!\n", gap, station, channel, str_time1, str_time2);
	ret = 1;
    }
    return ret;
+1 −5
Original line number Diff line number Diff line
@@ -355,11 +355,7 @@ int nmxptool_ew_proc_configfile (char * configfile, NMXPTOOL_PARAMS *params) {
	    }

	    else if (k_its ("Verbosity")) {
		if(k_int() != 0) {
		    params->flag_verbose = 1;
		} else {
		    params->flag_verbose = 0;
		}
		params->verbose_level = k_int();
	    }

	    else if (k_its ("NmxpHost")) {
+78 −62

File changed.

Preview size limit exceeded, changes collapsed.

+4 −2
Original line number Diff line number Diff line
@@ -7,7 +7,7 @@
 * 	Istituto Nazionale di Geofisica e Vulcanologia - Italy
 *	quintiliani@ingv.it
 *
 * $Id: nmxptool_getoptlong.h,v 1.20 2007-11-21 11:04:56 mtheo Exp $
 * $Id: nmxptool_getoptlong.h,v 1.21 2007-11-22 11:13:05 mtheo Exp $
 *
 */

@@ -43,6 +43,8 @@
#define DEFAULT_TIMEOUTRECV_MINIMUM 		10
#define DEFAULT_TIMEOUTRECV_MAXIMUM 		300

#define DEFAULT_VERBOSE_LEVEL 			NMXP_LOG_D_NULL


/*! \brief Struct that stores information about parameter of the program */
typedef struct {
@@ -63,9 +65,9 @@ typedef struct {
    int32_t delay;
    int32_t max_tolerable_latency;
    int32_t timeoutrecv;
    int32_t verbose_level;
    char *ew_configuration_file;
    int flag_writeseed;
    int flag_verbose;
    int flag_listchannels;
    int flag_request_channelinfo;
    int flag_writefile;