aboutsummaryrefslogtreecommitdiff
path: root/src/ats-tests/ats-testing-log.c
diff options
context:
space:
mode:
authorMatthias Wachs <wachs@net.in.tum.de>2014-01-30 10:45:13 +0000
committerMatthias Wachs <wachs@net.in.tum.de>2014-01-30 10:45:13 +0000
commit7067d8df58abce4636ff94cd3621aee9de1ab594 (patch)
tree3632705ab7d0b30b791c240ef05eca74fa624597 /src/ats-tests/ats-testing-log.c
parentdaf74c08914b5dbec07848207262eff933a5f180 (diff)
downloadgnunet-7067d8df58abce4636ff94cd3621aee9de1ab594.tar.gz
gnunet-7067d8df58abce4636ff94cd3621aee9de1ab594.zip
writign plots
Diffstat (limited to 'src/ats-tests/ats-testing-log.c')
-rw-r--r--src/ats-tests/ats-testing-log.c59
1 files changed, 39 insertions, 20 deletions
diff --git a/src/ats-tests/ats-testing-log.c b/src/ats-tests/ats-testing-log.c
index 17b3ab450..3d689e7b2 100644
--- a/src/ats-tests/ats-testing-log.c
+++ b/src/ats-tests/ats-testing-log.c
@@ -258,6 +258,9 @@ write_throughput_gnuplot_script (char * fn, struct LoggingPeer *lp)
258 int peer_index; 258 int peer_index;
259 259
260 GNUNET_asprintf (&gfn, "gnuplot_throughput_%s",fn); 260 GNUNET_asprintf (&gfn, "gnuplot_throughput_%s",fn);
261 fprintf (stderr, "Writing throughput plot for master %u to `%s'\n",
262 lp->peer->no, gfn);
263
261 f = GNUNET_DISK_file_open (gfn, 264 f = GNUNET_DISK_file_open (gfn,
262 GNUNET_DISK_OPEN_WRITE | GNUNET_DISK_OPEN_CREATE, 265 GNUNET_DISK_OPEN_WRITE | GNUNET_DISK_OPEN_CREATE,
263 GNUNET_DISK_PERM_USER_EXEC | GNUNET_DISK_PERM_USER_READ | 266 GNUNET_DISK_PERM_USER_EXEC | GNUNET_DISK_PERM_USER_READ |
@@ -328,6 +331,9 @@ write_rtt_gnuplot_script (char * fn, struct LoggingPeer *lp)
328 int index; 331 int index;
329 332
330 GNUNET_asprintf (&gfn, "gnuplot_rtt_%s",fn); 333 GNUNET_asprintf (&gfn, "gnuplot_rtt_%s",fn);
334 fprintf (stderr, "Writing rtt plot for master %u to `%s'\n",
335 lp->peer->no, gfn);
336
331 f = GNUNET_DISK_file_open (gfn, 337 f = GNUNET_DISK_file_open (gfn,
332 GNUNET_DISK_OPEN_WRITE | GNUNET_DISK_OPEN_CREATE, 338 GNUNET_DISK_OPEN_WRITE | GNUNET_DISK_OPEN_CREATE,
333 GNUNET_DISK_PERM_USER_EXEC | GNUNET_DISK_PERM_USER_READ | 339 GNUNET_DISK_PERM_USER_EXEC | GNUNET_DISK_PERM_USER_READ |
@@ -374,6 +380,9 @@ write_bw_gnuplot_script (char * fn, struct LoggingPeer *lp)
374 int index; 380 int index;
375 381
376 GNUNET_asprintf (&gfn, "gnuplot_bw_%s",fn); 382 GNUNET_asprintf (&gfn, "gnuplot_bw_%s",fn);
383 fprintf (stderr, "Writing bandwidth plot for master %u to `%s'\n",
384 lp->peer->no, gfn);
385
377 f = GNUNET_DISK_file_open (gfn, 386 f = GNUNET_DISK_file_open (gfn,
378 GNUNET_DISK_OPEN_WRITE | GNUNET_DISK_OPEN_CREATE, 387 GNUNET_DISK_OPEN_WRITE | GNUNET_DISK_OPEN_CREATE,
379 GNUNET_DISK_PERM_USER_EXEC | GNUNET_DISK_PERM_USER_READ | 388 GNUNET_DISK_PERM_USER_EXEC | GNUNET_DISK_PERM_USER_READ |
@@ -386,7 +395,6 @@ write_bw_gnuplot_script (char * fn, struct LoggingPeer *lp)
386 } 395 }
387 396
388 /* Write header */ 397 /* Write header */
389
390 if (GNUNET_SYSERR == GNUNET_DISK_file_write(f, BW_TEMPLATE, strlen(BW_TEMPLATE))) 398 if (GNUNET_SYSERR == GNUNET_DISK_file_write(f, BW_TEMPLATE, strlen(BW_TEMPLATE)))
391 GNUNET_log (GNUNET_ERROR_TYPE_ERROR, 399 GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
392 "Cannot write data to plot file `%s'\n", gfn); 400 "Cannot write data to plot file `%s'\n", gfn);
@@ -417,11 +425,12 @@ write_bw_gnuplot_script (char * fn, struct LoggingPeer *lp)
417 425
418 426
419void 427void
420GNUNET_ATS_TEST_logging_write_to_file (struct LoggingHandle *l, char *test_name) 428GNUNET_ATS_TEST_logging_write_to_file (struct LoggingHandle *l,
429 char *experiment_name, int plots)
421{ 430{
422 struct GNUNET_DISK_FileHandle *f; 431 struct GNUNET_DISK_FileHandle *f;
423 432 char *tmp_exp_name;
424 char * filename; 433 char *filename_data;
425 char *data; 434 char *data;
426 char *slave_string; 435 char *slave_string;
427 char *slave_string_tmp; 436 char *slave_string_tmp;
@@ -431,32 +440,39 @@ GNUNET_ATS_TEST_logging_write_to_file (struct LoggingHandle *l, char *test_name)
431 int c_m; 440 int c_m;
432 int c_s; 441 int c_s;
433 442
443
434 timestamp = GNUNET_TIME_absolute_get(); 444 timestamp = GNUNET_TIME_absolute_get();
435 445
446 tmp_exp_name = experiment_name;
447 if (NULL != strchr (experiment_name, '/'));
448 {
449 tmp_exp_name = strchr (experiment_name, '/');
450 tmp_exp_name++;
451 }
452
436 for (c_m = 0; c_m < l->num_peers; c_m++) 453 for (c_m = 0; c_m < l->num_peers; c_m++)
437 { 454 {
438 GNUNET_asprintf (&filename, "%s_%llu_master_%u_%s_%s.data", test_name, 455 GNUNET_asprintf (&filename_data, "%s_%llu_master_%u_%s_%s.data", tmp_exp_name,
439 timestamp.abs_value_us, 456 timestamp.abs_value_us,
440 l->lp[c_m].peer->no, GNUNET_i2s(&l->lp[c_m].peer->id), l->name); 457 l->lp[c_m].peer->no, GNUNET_i2s(&l->lp[c_m].peer->id), l->name);
441 458
442 GNUNET_log (GNUNET_ERROR_TYPE_INFO, "Writing master %u to file `%s'\n", 459 fprintf (stderr, "Writing master %u to file `%s'\n", c_m, filename_data);
443 c_m, filename);
444 460
445 f = GNUNET_DISK_file_open (filename, 461 f = GNUNET_DISK_file_open (filename_data,
446 GNUNET_DISK_OPEN_WRITE | GNUNET_DISK_OPEN_CREATE, 462 GNUNET_DISK_OPEN_WRITE | GNUNET_DISK_OPEN_CREATE,
447 GNUNET_DISK_PERM_USER_READ | GNUNET_DISK_PERM_USER_WRITE); 463 GNUNET_DISK_PERM_USER_READ | GNUNET_DISK_PERM_USER_WRITE);
448 if (NULL == f) 464 if (NULL == f)
449 { 465 {
450 GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Cannot open log file `%s'\n", filename); 466 GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Cannot open log file `%s'\n", filename_data);
451 GNUNET_free (filename); 467 GNUNET_free (filename_data);
452 return; 468 return;
453 } 469 }
454 470
455 GNUNET_asprintf (&data, "# master peers: %u ; slave peers: %u ; experiment : %s\n", 471 GNUNET_asprintf (&data, "# master peers: %u ; slave peers: %u ; experiment : %s\n",
456 l->num_peers, l->lp[c_m].peer->num_partners, test_name); 472 l->num_peers, l->lp[c_m].peer->num_partners, experiment_name);
457 if (GNUNET_SYSERR == GNUNET_DISK_file_write(f, data, strlen(data))) 473 if (GNUNET_SYSERR == GNUNET_DISK_file_write(f, data, strlen(data)))
458 GNUNET_log (GNUNET_ERROR_TYPE_ERROR, 474 GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
459 "Cannot write data to log file `%s'\n", filename); 475 "Cannot write data to log file `%s'\n", filename_data);
460 GNUNET_free (data); 476 GNUNET_free (data);
461 477
462 for (cur_lt = l->lp[c_m].head; NULL != cur_lt; cur_lt = cur_lt->next) 478 for (cur_lt = l->lp[c_m].head; NULL != cur_lt; cur_lt = cur_lt->next)
@@ -534,24 +550,27 @@ GNUNET_ATS_TEST_logging_write_to_file (struct LoggingHandle *l, char *test_name)
534 550
535 if (GNUNET_SYSERR == GNUNET_DISK_file_write(f, data, strlen(data))) 551 if (GNUNET_SYSERR == GNUNET_DISK_file_write(f, data, strlen(data)))
536 GNUNET_log (GNUNET_ERROR_TYPE_ERROR, 552 GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
537 "Cannot write data to log file `%s'\n", filename); 553 "Cannot write data to log file `%s'\n", filename_data);
538 GNUNET_free (data); 554 GNUNET_free (data);
539 } 555 }
540 if (GNUNET_SYSERR == GNUNET_DISK_file_close(f)) 556 if (GNUNET_SYSERR == GNUNET_DISK_file_close(f))
541 { 557 {
542 GNUNET_log (GNUNET_ERROR_TYPE_ERROR, 558 GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
543 "Cannot close log file `%s'\n", filename); 559 "Cannot close log file `%s'\n", filename_data);
544 GNUNET_free (filename); 560 GNUNET_free (filename_data);
545 return; 561 return;
546 } 562 }
547 563
548 write_throughput_gnuplot_script (filename, l->lp); 564 if (GNUNET_YES == plots)
549 write_rtt_gnuplot_script (filename, l->lp); 565 {
550 write_bw_gnuplot_script (filename, l->lp); 566 write_throughput_gnuplot_script (filename_data, &l->lp[c_m]);
567 write_rtt_gnuplot_script (filename_data, &l->lp[c_m]);
568 write_bw_gnuplot_script (filename_data, &l->lp[c_m]);
569 }
551 570
552 GNUNET_log (GNUNET_ERROR_TYPE_INFO, 571 GNUNET_log (GNUNET_ERROR_TYPE_INFO,
553 "Data file successfully written to log file `%s'\n", filename); 572 "Data file successfully written to log file `%s'\n", filename_data);
554 GNUNET_free (filename); 573 GNUNET_free (filename_data);
555 } 574 }
556} 575}
557 576