Skip to content

Commit 0876b07

Browse files
author
Konrad
authored
Add files via upload
1 parent 4f4b793 commit 0876b07

File tree

10 files changed

+1045
-0
lines changed

10 files changed

+1045
-0
lines changed

config/config.php

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+

2+
<?php
3+
/*
4+
_ __ _
5+
| | / / | |
6+
| |/ / ___ _ __ _ __ __ _ __| |
7+
| \ / _ \| '_ \| '__/ _` |/ _` |
8+
| |\ \ (_) | | | | | | (_| | (_| |
9+
\_| \_/\___/|_| |_|_| \__,_|\__,_|
10+
11+
*/
12+
13+
//EN - FR
14+
//CONFIGURATION - CONFIG
15+
16+
17+
//SITE NAME - Nom du site
18+
$sitename = 'SITE NAME - Nom du site';
19+
20+
21+
// CAPS ONLY - Majuscule seulement
22+
23+
24+
//Bit or byte - Bit ou octet
25+
// US=bit and/et EU= octet
26+
$num = 'EU';
27+
28+
//Data transferred or received - Donnée transférée ou recus
29+
//RX = received/recus TX = transferred/transféerée
30+
$datatype = 'TX';
31+
32+
//Language - Langue
33+
//FR = francais/french - EN = english/anglais
34+
$lang = 'FR';
35+
36+
//IP OF SERVER - Ip du serveur
37+
$ip = '127.0.0.1';
38+
?>

config/index.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
_ __ _
2+
| | / / | |
3+
| |/ / ___ _ __ _ __ __ _ __| |
4+
| \ / _ \| '_ \| '__/ _` |/ _` |
5+
| |\ \ (_) | | | | | | (_| | (_| |
6+
\_| \_/\___/|_| |_|_| \__,_|\__,_|

data/layer4.php

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
<?php
2+
/*
3+
_ __ _
4+
| | / / | |
5+
| |/ / ___ _ __ _ __ __ _ __| |
6+
| \ / _ \| '_ \| '__/ _` |/ _` |
7+
| |\ \ (_) | | | | | | (_| | (_| |
8+
\_| \_/\___/|_| |_|_| \__,_|\__,_|
9+
*/
10+
require '../config/config.php';
11+
header("Access-Control-Allow-Origin: *");
12+
header("Content-type: text/json");
13+
$x = time() * 1000;
14+
15+
$tx1 = file_get_contents("/sys/class/net/eth0/statistics/tx_bytes");
16+
$rx1 = file_get_contents("/sys/class/net/eth0/statistics/rx_bytes");
17+
sleep(1);
18+
$tx2 = file_get_contents("/sys/class/net/eth0/statistics/tx_bytes");
19+
$rx2 = file_get_contents("/sys/class/net/eth0/statistics/rx_bytes");
20+
21+
22+
23+
if($datatype == 'RX'){
24+
if($num == 'EU'){
25+
26+
27+
$y = ($rx2-$rx1);
28+
$ret = array($x, $y);
29+
echo json_encode($ret);
30+
31+
}
32+
elseif($num == 'US'){
33+
34+
35+
$y = ($rx2-$rx1)*8;
36+
$ret = array($x, $y);
37+
echo json_encode($ret);
38+
39+
}
40+
else{
41+
echo 'CONFIGURATION ERROR - ERREUR CONFIG (num)';
42+
}
43+
44+
}
45+
46+
47+
elseif($datatype == 'TX'){
48+
49+
if($num == 'EU'){
50+
51+
52+
$y = ($tx2-$tx1);
53+
$ret = array($x, $y);
54+
echo json_encode($ret);
55+
56+
}
57+
elseif($num == 'US'){
58+
$y = ($tx2-$tx1)*8;
59+
$ret = array($x, $y);
60+
echo json_encode($ret);
61+
62+
}
63+
else{
64+
echo 'CONFIGURATION ERROR - ERREUR CONFIG (num)';
65+
}
66+
}
67+
68+
69+
70+
else{
71+
echo 'CONFIGURATION ERROR - ERREUR CONFIG (datatype)';
72+
73+
}
74+
75+
76+
?>

data/layer7.php

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
<?php
2+
/*
3+
_ __ _
4+
| | / / | |
5+
| |/ / ___ _ __ _ __ __ _ __| |
6+
| \ / _ \| '_ \| '__/ _` |/ _` |
7+
| |\ \ (_) | | | | | | (_| | (_| |
8+
\_| \_/\___/|_| |_|_| \__,_|\__,_|
9+
*/
10+
header("Access-Control-Allow-Origin: *");
11+
header("Content-type: text/json");
12+
$x = time() * 1000;
13+
$file="layer7-logs";
14+
$linecount = 0;
15+
$handle = fopen($file, "r");
16+
while(!feof($handle)){
17+
$line = fgets($handle);
18+
$linecount++;
19+
}
20+
fclose($handle);
21+
file_put_contents("layer7-logs", "");
22+
$y = $linecount-1;
23+
$ret = array($x, $y);
24+
echo json_encode($ret);
25+
?>

index.php

Lines changed: 154 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,154 @@
1+
<!--
2+
_ __ _
3+
| | / / | |
4+
| |/ / ___ _ __ _ __ __ _ __| |
5+
| \ / _ \| '_ \| '__/ _` |/ _` |
6+
| |\ \ (_) | | | | | | (_| | (_| |
7+
\_| \_/\___/|_| |_|_| \__,_|\__,_|
8+
-->
9+
<?php
10+
session_start();
11+
require 'config/config.php';
12+
if ($num == 'EU'){
13+
if($lang == 'FR'){
14+
$datareturn = 'Octets';
15+
16+
}else{
17+
$datareturn = 'Bytes';
18+
19+
}
20+
}else{
21+
$datareturn = 'Bit';
22+
}
23+
if($lang == 'FR'){
24+
$requestreturn = 'Requetes';
25+
$phrase = 'par seconde';
26+
}else{
27+
$requestreturn = 'Requests';
28+
$phrase = 'per second';
29+
30+
}
31+
?>
32+
<title><?php echo $sitename;?></title>
33+
<center>
34+
<html>
35+
<head>
36+
<script src="js/jquery.min.js"></script>
37+
<?php if($lang == 'FR'){?>
38+
39+
<script src="js/highcharts-fr.js"></script>
40+
<script src="js/exporting-fr.js"></script>
41+
42+
<?php }else{?>
43+
44+
<script src="js/highcharts-en.js"></script>
45+
<script src="js/exporting-en.js"></script>
46+
47+
<?php }?>
48+
49+
<?php error_log(" \r\n",3,'data/layer7-logs'); ?>
50+
51+
<script id="source" language="javascript" type="text/javascript">
52+
$(document).ready(function() {
53+
54+
Highcharts.createElement('link', {
55+
href: 'https://fonts.googleapis.com/css?family=Unica+One',
56+
rel: 'stylesheet',
57+
type: 'text/css'
58+
}, null, document.getElementsByTagName('head')[0]);
59+
60+
chart = new Highcharts.Chart({
61+
chart: {
62+
renderTo: 'container',
63+
defaultSeriesType: 'spline',
64+
events: {
65+
load: requestData
66+
}
67+
},
68+
title: {
69+
text: 'Layer 7 ==><?php echo $ip;?> PORT 80<=='
70+
},
71+
xAxis: {
72+
type: 'datetime',
73+
tickPixelInterval: 150,
74+
maxZoom: 20 * 1000
75+
},
76+
yAxis: {
77+
minPadding: 0.2,
78+
maxPadding: 0.2,
79+
title: {
80+
text: '<?php echo $requestreturn;?> <?php echo $phrase;?>',
81+
margin: 80
82+
}
83+
},
84+
series: [{
85+
name: '<?php echo $requestreturn;?>/s',
86+
data: []
87+
}]
88+
});
89+
90+
chart2 = new Highcharts.Chart({
91+
chart: {
92+
renderTo: 'container2',
93+
defaultSeriesType: 'spline',
94+
events: {
95+
load: requestData2
96+
}
97+
},
98+
title: {
99+
text: 'Layer 4 ==><?php echo $ip;?> PORT 80 <=='
100+
},
101+
xAxis: {
102+
type: 'datetime',
103+
tickPixelInterval: 150,
104+
maxZoom: 20 * 1000
105+
},
106+
yAxis: {
107+
minPadding: 0.2,
108+
maxPadding: 0.2,
109+
title: {
110+
text: '<?php echo $datareturn;?> <?php echo $phrase;?>',
111+
margin: 80
112+
}
113+
},
114+
series: [{
115+
name: '<?php echo $datareturn;?>/s',
116+
data: []
117+
}]
118+
});
119+
});
120+
121+
function requestData() {
122+
$.ajax({
123+
url: 'data/layer7.php',
124+
success: function(point) {
125+
var series = chart.series[0],
126+
shift = series.data.length > 20;
127+
chart.series[0].addPoint(point, true, shift);
128+
setTimeout(requestData, 1000);
129+
},
130+
cache: false
131+
});
132+
}
133+
function requestData2() {
134+
$.ajax({
135+
url: 'data/layer4.php',
136+
success: function(point) {
137+
var series = chart2.series[0],
138+
shift = series.data.length > 20;
139+
chart2.series[0].addPoint(point, true, shift);
140+
setTimeout(requestData2, 1000);
141+
},
142+
cache: false
143+
});
144+
}
145+
</script>
146+
147+
148+
149+
</head>
150+
<body>
151+
<div id="container"></div><br>
152+
<div id="container2"></div><br>
153+
<center><h1>&copy Konrad</h1>
154+
</html>

js/exporting-en.js

Lines changed: 25 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)