public inbox for development@lists.ipfire.org
 help / color / mirror / Atom feed
From: nateos2g <nateos2g@fastmail.com>
To: development@lists.ipfire.org
Subject: Re: [PATCH] Network based RRD graphs Bytes to Bits
Date: Mon, 24 May 2021 17:21:19 -0400	[thread overview]
Message-ID: <40d9b29b-9613-75ac-4c58-855e1aa6adc3@fastmail.com> (raw)
In-Reply-To: <8aebf43d-571a-bdbc-3d2d-131f5b81e4b0@ipfire.org>

[-- Attachment #1: Type: text/plain, Size: 26415 bytes --]

I noticed your pic is missing 'Outgoing Traffic'.
Did you regenerate the language cache files? This only has to done by us 
manually, but I assume an update package would do this, or the files 
would already be in new version, like the ISO.

The Lang keys are in langs/en/cgi-bin/en.pl, which is in this patch. As 
these keys are only used for these graphs, as far as I can find, I guess 
we could change/shorten them. But I didn't want to change something that 
I wasn't specifically focusing on.

Thanks,
Nate

On 24/05/2021 15:43, Bernhard Bitsch wrote:
> Hi,
>
> I've tested also, for the qos and network graphs.
> No problem.
>
> One annotation: why are the legends 'incoming traffic in bytes per 
> second' ( new '... bits per second' )? The associated text is 
> 'incoming traffic' ( obviously in both versions ).
> Can't we change this key just to 'incoming traffic'?
> This is true for 'outgoing traffic...', 'incoming overhead...', ...
> I didn't search where this texts are used in the project.
>
> Regards,
> Bernhard
>
> Am 24.05.2021 um 18:18 schrieb Matthias Fischer:
>> Hi,
>>
>> thanks for the corrected patch - now I could apply it.
>>
>> I made a quick test => please see attachments.
>>
>> Seems to work as expected.
>>
>> However I cannot test VPN connections, sorry.
>>
>> Best,
>> Matthias
>>
>> On 24.05.2021 16:04, nateos2g(a)fastmail.com wrote:
>>> From: Nate Oaks <nateos2g(a)fastmail.com>
>>>
>>> For proper display of network measurements, Bps (bytes) should be
>>> converted to bps (bits). Bytes are for data/storage (RAM, HDD, SSD,
>>> etc.), bits are for network bandwidth or throughput (NICs, switches,
>>> routers, WiFi adapters, etc.).
>>>
>>> Networks transfer data as single bits at a time. It’s both more 
>>> accurate
>>> and more intuitive to measure network speed in bits per second that a
>>> network connection is transmitting, not the amount of data units, or
>>> bytes, it transmits. Notice all network devices are marketed, measure
>>> and diplay in bits per second.
>>>
>>> I simply used RRD CDEF to multiply by 8.
>>>
>>> NOTE: Found: "ERROR: rpn expressions without DEF or CDEF variables are
>>> not supported".
>>> Specifically in updateqosgraph, CDEF does not like a number as a
>>> variable name. ie. "204" from $classline[1].
>>>
>>> Requires update of the language cache files:
>>> perl -e "require '/var/ipfire/lang.pl'; &Lang::BuildCacheLang"
>>> or: update-lang-cache
>>>
>>> Found one other asking for this:
>>> https://community.ipfire.org/t/ipfire-bandwidth-usage/1203
>>>
>>> Signed-off-by: Nate Oaks <nateos2g(a)fastmail.com>
>>> ---
>>>   config/cfgroot/graphs.pl | 202 
>>> +++++++++++++++++++++------------------
>>>   langs/en/cgi-bin/en.pl   |  13 +--
>>>   2 files changed, 117 insertions(+), 98 deletions(-)
>>>
>>> diff --git a/config/cfgroot/graphs.pl b/config/cfgroot/graphs.pl
>>> index 441d4c483a46..c83ae67bbfc1 100644
>>> --- a/config/cfgroot/graphs.pl
>>> +++ b/config/cfgroot/graphs.pl
>>> @@ -545,28 +545,30 @@ sub updateifgraph {
>>>           "-1".$period,
>>>           "-r",
>>>           "-t ".$Lang::tr{'traffic on'}." ".$interface." 
>>> ".$Lang::tr{'graph per'}." ".$Lang::tr{$period."-graph"},
>>> -        "-v ".$Lang::tr{'bytes per second'},
>>> +        "-v ".$Lang::tr{'bits per second'},
>>>           "--color=SHADEA".$color{"color19"},
>>>           "--color=SHADEB".$color{"color19"},
>>>           "--color=BACK".$color{"color21"},
>>> "DEF:incoming=".$mainsettings{'RRDLOG'}."/collectd/localhost/interface/if_octets-".$interface.".rrd:rx:AVERAGE",
>>> "DEF:outgoing=".$mainsettings{'RRDLOG'}."/collectd/localhost/interface/if_octets-".$interface.".rrd:tx:AVERAGE",
>>> -        "CDEF:outgoingn=outgoing,-1,*",
>>> +        "CDEF:outgoingb=outgoing,8,*",
>>> +        "CDEF:outgoingn=outgoingb,-1,*",
>>> +        "CDEF:incomingb=incoming,8,*",
>>>           "COMMENT:".sprintf("%-20s",$Lang::tr{'caption'}),
>>>           "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
>>>           "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
>>>           "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
>>> "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j",
>>> - 
>>> "AREA:incoming".$color{"color12"}."A0:".sprintf("%-20s",$Lang::tr{'incoming 
>>> traffic in bytes per second'}),
>>> -        "GPRINT:incoming:MAX:%8.1lf %sBps",
>>> -        "GPRINT:incoming:AVERAGE:%8.1lf %sBps",
>>> -        "GPRINT:incoming:MIN:%8.1lf %sBps",
>>> -        "GPRINT:incoming:LAST:%8.1lf %sBps\\j",
>>> - 
>>> "AREA:outgoingn".$color{"color13"}."A0:".sprintf("%-20s",$Lang::tr{'outgoing 
>>> traffic in bytes per second'}),
>>> -        "GPRINT:outgoing:MAX:%8.1lf %sBps",
>>> -        "GPRINT:outgoing:AVERAGE:%8.1lf %sBps",
>>> -        "GPRINT:outgoing:MIN:%8.1lf %sBps",
>>> -        "GPRINT:outgoing:LAST:%8.1lf %sBps\\j",
>>> + 
>>> "AREA:incomingb".$color{"color12"}."A0:".sprintf("%-20s",$Lang::tr{'incoming 
>>> traffic in bits per second'}),
>>> +        "GPRINT:incomingb:MAX:%8.1lf %sbps",
>>> +        "GPRINT:incomingb:AVERAGE:%8.1lf %sbps",
>>> +        "GPRINT:incomingb:MIN:%8.1lf %sbps",
>>> +        "GPRINT:incomingb:LAST:%8.1lf %sbps\\j",
>>> + 
>>> "AREA:outgoingn".$color{"color13"}."A0:".sprintf("%-20s",$Lang::tr{'outgoing 
>>> traffic in bits per second'}),
>>> +        "GPRINT:outgoingb:MAX:%8.1lf %sbps",
>>> +        "GPRINT:outgoingb:AVERAGE:%8.1lf %sbps",
>>> +        "GPRINT:outgoingb:MIN:%8.1lf %sbps",
>>> +        "GPRINT:outgoingb:LAST:%8.1lf %sbps\\j",
>>>           );
>>>           $ERROR = RRDs::error;
>>>           return "Error in RRD::graph for ".$interface.": 
>>> ".$ERROR."\n" if $ERROR;
>>> @@ -582,28 +584,30 @@ sub updatevpngraph {
>>>           "-1".$period,
>>>           "-r",
>>>           "-t ".$Lang::tr{'traffic on'}." ".$interface." 
>>> ".$Lang::tr{'graph per'}." ".$Lang::tr{$period."-graph"},
>>> -        "-v ".$Lang::tr{'bytes per second'},
>>> +        "-v ".$Lang::tr{'bits per second'},
>>>           "--color=SHADEA".$color{"color19"},
>>>           "--color=SHADEB".$color{"color19"},
>>>           "--color=BACK".$color{"color21"},
>>> "DEF:incoming=".$mainsettings{'RRDLOG'}."/collectd/localhost/openvpn-$interface/if_octets_derive.rrd:rx:AVERAGE",
>>> "DEF:outgoing=".$mainsettings{'RRDLOG'}."/collectd/localhost/openvpn-$interface/if_octets_derive.rrd:tx:AVERAGE",
>>> -        "CDEF:outgoingn=outgoing,-1,*",
>>> +        "CDEF:outgoingb=outgoing,8,*",
>>> +        "CDEF:outgoingn=outgoingb,-1,*",
>>> +        "CDEF:incomingb=incoming,8,*",
>>>           "COMMENT:".sprintf("%-20s",$Lang::tr{'caption'}),
>>>           "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
>>>           "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
>>>           "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
>>> "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j",
>>> - "AREA:incoming#00dd00:".sprintf("%-20s",$Lang::tr{'incoming 
>>> traffic in bytes per second'}),
>>> -        "GPRINT:incoming:MAX:%8.1lf %sBps",
>>> -        "GPRINT:incoming:AVERAGE:%8.1lf %sBps",
>>> -        "GPRINT:incoming:MIN:%8.1lf %sBps",
>>> -        "GPRINT:incoming:LAST:%8.1lf %sBps\\j",
>>> - "AREA:outgoingn#dd0000:".sprintf("%-20s",$Lang::tr{'outgoing 
>>> traffic in bytes per second'}),
>>> -        "GPRINT:outgoing:MAX:%8.1lf %sBps",
>>> -        "GPRINT:outgoing:AVERAGE:%8.1lf %sBps",
>>> -        "GPRINT:outgoing:MIN:%8.1lf %sBps",
>>> -        "GPRINT:outgoing:LAST:%8.1lf %sBps\\j",
>>> + "AREA:incomingb#00dd00:".sprintf("%-20s",$Lang::tr{'incoming 
>>> traffic in bits per second'}),
>>> +        "GPRINT:incomingb:MAX:%8.1lf %sbps",
>>> +        "GPRINT:incomingb:AVERAGE:%8.1lf %sbps",
>>> +        "GPRINT:incomingb:MIN:%8.1lf %sbps",
>>> +        "GPRINT:incomingb:LAST:%8.1lf %sbps\\j",
>>> + "AREA:outgoingn#dd0000:".sprintf("%-20s",$Lang::tr{'outgoing 
>>> traffic in bits per second'}),
>>> +        "GPRINT:outgoingb:MAX:%8.1lf %sbps",
>>> +        "GPRINT:outgoingb:AVERAGE:%8.1lf %sbps",
>>> +        "GPRINT:outgoingb:MIN:%8.1lf %sbps",
>>> +        "GPRINT:outgoingb:LAST:%8.1lf %sbps\\j",
>>>           );
>>>           $ERROR = RRDs::error;
>>>           return "Error in RRD::graph for ".$interface.": 
>>> ".$ERROR."\n" if $ERROR;
>>> @@ -619,7 +623,7 @@ sub updatevpnn2ngraph {
>>>           "-1".$period,
>>>           "-r",
>>>           "-t ".$Lang::tr{'traffic on'}." ".$interface." 
>>> ".$Lang::tr{'graph per'}." ".$Lang::tr{$period."-graph"},
>>> -        "-v ".$Lang::tr{'bytes per second'},
>>> +        "-v ".$Lang::tr{'bits per second'},
>>>           "--color=SHADEA".$color{"color19"},
>>>           "--color=SHADEB".$color{"color19"},
>>>           "--color=BACK".$color{"color21"},
>>> @@ -629,44 +633,50 @@ sub updatevpnn2ngraph {
>>> "DEF:overhead_out=".$mainsettings{'RRDLOG'}."/collectd/localhost/openvpn-$interface/if_octets_derive-overhead.rrd:tx:AVERAGE",
>>> "DEF:compression_in=".$mainsettings{'RRDLOG'}."/collectd/localhost/openvpn-$interface/compression_derive-data_in.rrd:uncompressed:AVERAGE",
>>> "DEF:compression_out=".$mainsettings{'RRDLOG'}."/collectd/localhost/openvpn-$interface/compression_derive-data_out.rrd:uncompressed:AVERAGE",
>>> -        "CDEF:outgoingn=outgoing,-1,*",
>>> -        "CDEF:overhead_outn=overhead_out,-1,*",
>>> -        "CDEF:compression_outn=compression_out,-1,*",
>>> +        "CDEF:outgoingb=outgoing,8,*",
>>> +        "CDEF:outgoingn=outgoingb,-1,*",
>>> +        "CDEF:incomingb=incoming,8,*",
>>> +        "CDEF:overhead_outb=overhead_out,8,*",
>>> +        "CDEF:overhead_outn=overhead_outb,-1,*",
>>> +        "CDEF:overhead_inb=overhead_in,8,*",
>>> +        "CDEF:compression_outb=compression_out,8,*",
>>> +        "CDEF:compression_outn=compression_outb,-1,*",
>>> +        "CDEF:compression_inb=compression_in,8,*",
>>>           "COMMENT:".sprintf("%-20s",$Lang::tr{'caption'}),
>>>           "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
>>>           "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
>>>           "COMMENT:".sprintf("%15s",$Lang::tr{'minimal'}),
>>> "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j",
>>> - "AREA:incoming#00dd00:".sprintf("%-23s",$Lang::tr{'incoming 
>>> traffic in bytes per second'}),
>>> -        "GPRINT:incoming:MAX:%8.1lf %sBps",
>>> -        "GPRINT:incoming:AVERAGE:%8.1lf %sBps",
>>> -        "GPRINT:incoming:MIN:%8.1lf %sBps",
>>> -        "GPRINT:incoming:LAST:%8.1lf %sBps\\j",
>>> - "STACK:overhead_in#116B11:".sprintf("%-23s",$Lang::tr{'incoming 
>>> overhead in bytes per second'}),
>>> -        "GPRINT:overhead_in:MAX:%8.1lf %sBps",
>>> -        "GPRINT:overhead_in:AVERAGE:%8.1lf %sBps",
>>> -        "GPRINT:overhead_in:MIN:%8.1lf %sBps",
>>> -        "GPRINT:overhead_in:LAST:%8.1lf %sBps\\j",
>>> - "LINE1:compression_in#ff00ff:".sprintf("%-23s",$Lang::tr{'incoming 
>>> compression in bytes per second'}),
>>> -        "GPRINT:compression_in:MAX:%8.1lf %sBps",
>>> -        "GPRINT:compression_in:AVERAGE:%8.1lf %sBps",
>>> -        "GPRINT:compression_in:MIN:%8.1lf %sBps",
>>> -        "GPRINT:compression_in:LAST:%8.1lf %sBps\\j",
>>> - "AREA:outgoingn#dd0000:".sprintf("%-23s",$Lang::tr{'outgoing 
>>> traffic in bytes per second'}),
>>> -        "GPRINT:outgoing:MAX:%8.1lf %sBps",
>>> -        "GPRINT:outgoing:AVERAGE:%8.1lf %sBps",
>>> -        "GPRINT:outgoing:MIN:%8.1lf %sBps",
>>> -        "GPRINT:outgoing:LAST:%8.1lf %sBps\\j",
>>> - "STACK:overhead_outn#870C0C:".sprintf("%-23s",$Lang::tr{'outgoing 
>>> overhead in bytes per second'}),
>>> -        "GPRINT:overhead_out:MAX:%8.1lf %sBps",
>>> -        "GPRINT:overhead_out:AVERAGE:%8.1lf %sBps",
>>> -        "GPRINT:overhead_out:MIN:%8.1lf %sBps",
>>> -        "GPRINT:overhead_out:LAST:%8.1lf %sBps\\j",
>>> - 
>>> "LINE1:compression_outn#000000:".sprintf("%-23s",$Lang::tr{'outgoing 
>>> compression in bytes per second'}),
>>> -        "GPRINT:compression_out:MAX:%8.1lf %sBps",
>>> -        "GPRINT:compression_out:AVERAGE:%8.1lf %sBps",
>>> -        "GPRINT:compression_out:MIN:%8.1lf %sBps",
>>> -        "GPRINT:compression_out:LAST:%8.1lf %sBps\\j",
>>> + "AREA:incomingb#00dd00:".sprintf("%-23s",$Lang::tr{'incoming 
>>> traffic in bits per second'}),
>>> +        "GPRINT:incomingb:MAX:%8.1lf %sbps",
>>> +        "GPRINT:incomingb:AVERAGE:%8.1lf %sbps",
>>> +        "GPRINT:incomingb:MIN:%8.1lf %sbps",
>>> +        "GPRINT:incomingb:LAST:%8.1lf %sbps\\j",
>>> + "STACK:overhead_inb#116B11:".sprintf("%-23s",$Lang::tr{'incoming 
>>> overhead in bits per second'}),
>>> +        "GPRINT:overhead_inb:MAX:%8.1lf %sbps",
>>> +        "GPRINT:overhead_inb:AVERAGE:%8.1lf %sbps",
>>> +        "GPRINT:overhead_inb:MIN:%8.1lf %sbps",
>>> +        "GPRINT:overhead_inb:bLAST:%8.1lf %sbps\\j",
>>> + 
>>> "LINE1:compression_inb#ff00ff:".sprintf("%-23s",$Lang::tr{'incoming 
>>> compression in bits per second'}),
>>> +        "GPRINT:compression_inb:MAX:%8.1lf %sbps",
>>> +        "GPRINT:compression_inb:AVERAGE:%8.1lf %sbps",
>>> +        "GPRINT:compression_inb:MIN:%8.1lf %sbps",
>>> +        "GPRINT:compression_inb:LAST:%8.1lf %sbps\\j",
>>> + "AREA:outgoingn#dd0000:".sprintf("%-23s",$Lang::tr{'outgoing 
>>> traffic in bits per second'}),
>>> +        "GPRINT:outgoingb:MAX:%8.1lf %sbps",
>>> +        "GPRINT:outgoingb:AVERAGE:%8.1lf %sbps",
>>> +        "GPRINT:outgoingb:MIN:%8.1lf %sbps",
>>> +        "GPRINT:outgoingb:LAST:%8.1lf %sbps\\j",
>>> + "STACK:overhead_outn#870C0C:".sprintf("%-23s",$Lang::tr{'outgoing 
>>> overhead in bits per second'}),
>>> +        "GPRINT:overhead_outb:MAX:%8.1lf %sbps",
>>> +        "GPRINT:overhead_outb:AVERAGE:%8.1lf %sbps",
>>> +        "GPRINT:overhead_outb:MIN:%8.1lf %sbps",
>>> +        "GPRINT:overhead_outb:LAST:%8.1lf %sbps\\j",
>>> + 
>>> "LINE1:compression_outn#000000:".sprintf("%-23s",$Lang::tr{'outgoing 
>>> compression in bits per second'}),
>>> +        "GPRINT:compression_outb:MAX:%8.1lf %sbps",
>>> +        "GPRINT:compression_outb:AVERAGE:%8.1lf %sbps",
>>> +        "GPRINT:compression_outb:MIN:%8.1lf %sbps",
>>> +        "GPRINT:compression_outb:LAST:%8.1lf %sbps\\j",
>>>           );
>>>           $ERROR = RRDs::error;
>>>           return "Error in RRD::graph for ".$interface.": 
>>> ".$ERROR."\n" if $ERROR;
>>> @@ -683,7 +693,7 @@ sub updatefwhitsgraph {
>>>           "-1".$period,
>>>           "-r",
>>>           "-t ".$Lang::tr{'firewall hits per'}." 
>>> ".$Lang::tr{$period."-graph"},
>>> -        "-v ".$Lang::tr{'bytes per second'},
>>> +        "-v ".$Lang::tr{'bits per second'},
>>>           "--color=SHADEA".$color{"color19"},
>>>           "--color=SHADEB".$color{"color19"},
>>>           "--color=BACK".$color{"color21"},
>>> @@ -692,36 +702,41 @@ sub updatefwhitsgraph {
>>> "DEF:forward=".$mainsettings{'RRDLOG'}."/collectd/localhost/iptables-filter-POLICYFWD/ipt_bytes-DROP_FORWARD.rrd:value:AVERAGE",
>>> "DEF:newnotsyn=".$mainsettings{'RRDLOG'}."/collectd/localhost/iptables-filter-NEWNOTSYN/ipt_bytes-DROP_NEWNOTSYN.rrd:value:AVERAGE",
>>> "DEF:portscan=".$mainsettings{'RRDLOG'}."/collectd/localhost/iptables-filter-PSCAN/ipt_bytes-DROP_PScan.rrd:value:AVERAGE",
>>> +        "CDEF:outputb=output,8,*",
>>> +        "CDEF:inputb=input,8,*",
>>> +        "CDEF:forwardb=forward,8,*",
>>> +        "CDEF:newnotsynb=newnotsyn,8,*",
>>> +        "CDEF:portscanb=portscan,8,*",
>>>           "COMMENT:".sprintf("%-26s",$Lang::tr{'caption'}),
>>>           "COMMENT:".sprintf("%15s",$Lang::tr{'maximal'}),
>>>           "COMMENT:".sprintf("%15s",$Lang::tr{'average'}),
>>>           "COMMENT:".sprintf("%14s",$Lang::tr{'minimal'}),
>>> "COMMENT:".sprintf("%15s",$Lang::tr{'current'})."\\j",
>>> - 
>>> "AREA:output".$color{"color25"}."A0:".sprintf("%-25s",$Lang::tr{'firewallhits'}." 
>>> (OUTPUT)"),
>>> -        "GPRINT:output:MAX:%8.1lf %sBps",
>>> -        "GPRINT:output:AVERAGE:%8.1lf %sBps",
>>> -        "GPRINT:output:MIN:%8.1lf %sBps",
>>> -        "GPRINT:output:LAST:%8.1lf %sBps\\j",
>>> - 
>>> "STACK:forward".$color{"color23"}."A0:".sprintf("%-25s",$Lang::tr{'firewallhits'}." 
>>> (FORWARD)"),
>>> -        "GPRINT:forward:MAX:%8.1lf %sBps",
>>> -        "GPRINT:forward:AVERAGE:%8.1lf %sBps",
>>> -        "GPRINT:forward:MIN:%8.1lf %sBps",
>>> -        "GPRINT:forward:LAST:%8.1lf %sBps\\j",
>>> - 
>>> "STACK:input".$color{"color24"}."A0:".sprintf("%-25s",$Lang::tr{'firewallhits'}." 
>>> (INPUT)"),
>>> -        "GPRINT:input:MAX:%8.1lf %sBps",
>>> -        "GPRINT:input:AVERAGE:%8.1lf %sBps",
>>> -        "GPRINT:input:MIN:%8.1lf %sBps",
>>> -        "GPRINT:input:LAST:%8.1lf %sBps\\j",
>>> - 
>>> "STACK:newnotsyn".$color{"color14"}."A0:".sprintf("%-25s","NewNotSYN"),
>>> -        "GPRINT:newnotsyn:MAX:%8.1lf %sBps",
>>> -        "GPRINT:newnotsyn:AVERAGE:%8.1lf %sBps",
>>> -        "GPRINT:newnotsyn:MIN:%8.1lf %sBps",
>>> -        "GPRINT:newnotsyn:LAST:%8.1lf %sBps\\j",
>>> - 
>>> "STACK:portscan".$color{"color16"}."A0:".sprintf("%-25s",$Lang::tr{'portscans'}),
>>> -        "GPRINT:portscan:MAX:%8.1lf %sBps",
>>> -        "GPRINT:portscan:AVERAGE:%8.1lf %sBps",
>>> -        "GPRINT:portscan:MIN:%8.1lf %sBps",
>>> -        "GPRINT:portscan:LAST:%8.1lf %sBps\\j",
>>> + 
>>> "AREA:outputb".$color{"color25"}."A0:".sprintf("%-25s",$Lang::tr{'firewallhits'}." 
>>> (OUTPUT)"),
>>> +        "GPRINT:outputb:MAX:%8.1lf %sbps",
>>> +        "GPRINT:outputb:AVERAGE:%8.1lf %sbps",
>>> +        "GPRINT:outputb:MIN:%8.1lf %sbps",
>>> +        "GPRINT:outputb:LAST:%8.1lf %sbps\\j",
>>> + 
>>> "STACK:forwardb".$color{"color23"}."A0:".sprintf("%-25s",$Lang::tr{'firewallhits'}." 
>>> (FORWARD)"),
>>> +        "GPRINT:forwardb:MAX:%8.1lf %sbps",
>>> +        "GPRINT:forwardb:AVERAGE:%8.1lf %sbps",
>>> +        "GPRINT:forwardb:MIN:%8.1lf %sbps",
>>> +        "GPRINT:forwardb:LAST:%8.1lf %sbps\\j",
>>> + 
>>> "STACK:inputb".$color{"color24"}."A0:".sprintf("%-25s",$Lang::tr{'firewallhits'}." 
>>> (INPUT)"),
>>> +        "GPRINT:inputb:MAX:%8.1lf %sbps",
>>> +        "GPRINT:inputb:AVERAGE:%8.1lf %sbps",
>>> +        "GPRINT:inputb:MIN:%8.1lf %sbps",
>>> +        "GPRINT:inputb:LAST:%8.1lf %sbps\\j",
>>> + 
>>> "STACK:newnotsynb".$color{"color14"}."A0:".sprintf("%-25s","NewNotSYN"), 
>>>
>>> +        "GPRINT:newnotsynb:MAX:%8.1lf %sbps",
>>> +        "GPRINT:newnotsynb:AVERAGE:%8.1lf %sbps",
>>> +        "GPRINT:newnotsynb:MIN:%8.1lf %sbps",
>>> +        "GPRINT:newnotsynb:LAST:%8.1lf %sbps\\j",
>>> + 
>>> "STACK:portscanb".$color{"color16"}."A0:".sprintf("%-25s",$Lang::tr{'portscans'}),
>>> +        "GPRINT:portscanb:MAX:%8.1lf %sbps",
>>> +        "GPRINT:portscanb:AVERAGE:%8.1lf %sbps",
>>> +        "GPRINT:portscanb:MIN:%8.1lf %sbps",
>>> +        "GPRINT:portscanb:LAST:%8.1lf %sbps\\j",
>>>           );
>>>           $ERROR = RRDs::error;
>>>           return "Error in RRD::graph for firewallhits: 
>>> ".$ERROR."\n" if $ERROR;
>>> @@ -1012,7 +1027,7 @@ sub updateqosgraph {
>>>           "-1".$period,
>>>           "-r",
>>>           "-t ".$Lang::tr{'Utilization on'}." 
>>> (".$qossettings{'DEV'}.") ".$Lang::tr{'graph per'}." 
>>> ".$Lang::tr{$period."-graph"},
>>> -        "-v ".$Lang::tr{'bytes per second'},
>>> +        "-v ".$Lang::tr{'bits per second'},
>>>           "--color=SHADEA".$color{"color19"},
>>>           "--color=SHADEB".$color{"color19"},
>>>           "--color=BACK".$color{"color21"},
>>> @@ -1039,21 +1054,24 @@ sub updateqosgraph {
>>>               }
>>>                 if ( $classline[0] eq $qossettings{'DEV'} ){
>>> -                push(@command, 
>>> "DEF:$classline[1]=$mainsettings{'RRDLOG'}/class_$qossettings{'CLASSPRFX'}-$classline[1]_$qossettings{'DEV'}.rrd:bytes:AVERAGE");
>>> +                # Found: ERROR: rpn expressions without DEF or CDEF 
>>> variables are not supported
>>> +                # CDEF does not like a number as a variable name. 
>>> ie. "204" from $classline[1]
>>> +                push(@command, 
>>> "DEF:$classline[1]bit=$mainsettings{'RRDLOG'}/class_$qossettings{'CLASSPRFX'}-$classline[1]_$qossettings{'DEV'}.rrd:bytes:AVERAGE");
>>> +                push(@command, 
>>> "CDEF:$classline[8]=$classline[1]bit,8,*");
>>>                     # get color to be used for this graph
>>>                   my $graphColor = $colorMap{$colorKey};
>>>                     if ($count eq "1") {
>>> -                    push(@command, 
>>> "AREA:$classline[1]$graphColor:$Lang::tr{'Class'} $classline[1] 
>>> -".sprintf("%15s",$classline[8]));
>>> +                    push(@command, 
>>> "AREA:$classline[8]$graphColor:$Lang::tr{'Class'} $classline[1] 
>>> -".sprintf("%15s",$classline[8]));
>>>                   } else {
>>> -                    push(@command, 
>>> "STACK:$classline[1]$graphColor:$Lang::tr{'Class'} $classline[1] 
>>> -".sprintf("%15s",$classline[8]));
>>> +                    push(@command, 
>>> "STACK:$classline[8]$graphColor:$Lang::tr{'Class'} $classline[1] 
>>> -".sprintf("%15s",$classline[8]));
>>>                   }
>>>   -                push(@command, "GPRINT:$classline[1]:MAX:%8.1lf 
>>> %sBps"
>>> -                        , "GPRINT:$classline[1]:AVERAGE:%8.1lf %sBps"
>>> -                        , "GPRINT:$classline[1]:MIN:%8.1lf %sBps"
>>> -                        , "GPRINT:$classline[1]:LAST:%8.1lf 
>>> %sBps\\j");
>>> +                push(@command, "GPRINT:$classline[8]:MAX:%8.1lf %sbps"
>>> +                        , "GPRINT:$classline[8]:AVERAGE:%8.1lf %sbps"
>>> +                        , "GPRINT:$classline[8]:MIN:%8.1lf %sbps"
>>> +                        , "GPRINT:$classline[8]:LAST:%8.1lf 
>>> %sbps\\j");
>>>                   $count++;
>>>               }
>>>           }
>>> diff --git a/langs/en/cgi-bin/en.pl b/langs/en/cgi-bin/en.pl
>>> index dc1fd8d67b30..b0097074beb0 100644
>>> --- a/langs/en/cgi-bin/en.pl
>>> +++ b/langs/en/cgi-bin/en.pl
>>> @@ -515,6 +515,7 @@
>>>   'broken pipe' => 'Broken pipe',
>>>   'buffered memory' => 'Buffered Memory',
>>>   'buffers' => 'buffers',
>>> +'bits per second' => 'Bits per Second',
>>>   'bytes per second' => 'Bytes per Second',
>>>   'bytes received' => 'Bytes Received',
>>>   'bytes sent' => 'Bytes Sent',
>>> @@ -1431,10 +1432,10 @@
>>>   'inactive' => 'inactive',
>>>   'include logfiles' => 'Include logfiles',
>>>   'incoming' => 'incoming',
>>> -'incoming compression in bytes per second' => 'Incoming Compression',
>>> +'incoming compression in bits per second' => 'Incoming Compression',
>>>   'incoming firewall access' => 'Incoming Firewall Access',
>>> -'incoming overhead in bytes per second' => 'Incoming Overhead',
>>> -'incoming traffic in bytes per second' => 'Incoming Traffic',
>>> +'incoming overhead in bits per second' => 'Incoming Overhead',
>>> +'incoming traffic in bits per second' => 'Incoming Traffic',
>>>   'incorrect password' => 'Incorrect password',
>>>   'info' => 'Info',
>>>   'init string' => 'Init:',
>>> @@ -1907,7 +1908,7 @@
>>>   'our donors' => 'Our donors',
>>>   'out' => 'Out',
>>>   'outgoing' => 'outgoing',
>>> -'outgoing compression in bytes per second' => 'Outgoing compression',
>>> +'outgoing compression in bits per second' => 'Outgoing compression',
>>>   'outgoing firewall' => 'Outgoing Firewall',
>>>   'outgoing firewall access' => 'Outgoing Firewall Access',
>>>   'outgoing firewall add ip group' => 'Add IP Address Group',
>>> @@ -1930,8 +1931,8 @@
>>>   'outgoing firewall reset' => 'Reset all',
>>>   'outgoing firewall view group' => 'View group',
>>>   'outgoing firewall warning' => 'Not selecting source ip or mac 
>>> ignores them',
>>> -'outgoing overhead in bytes per second' => 'Outgoing Overhead',
>>> -'outgoing traffic in bytes per second' => 'Outgoing Traffic',
>>> +'outgoing overhead in bits per second' => 'Outgoing Overhead',
>>> +'outgoing traffic in bits per second' => 'Outgoing Traffic',
>>>   'override mtu' => 'Override default MTU',
>>>   'ovpn' => 'OpenVPN',
>>>   'ovpn add conf' => 'Additional configuration',
>>>
>>


  reply	other threads:[~2021-05-24 21:21 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <be613c0f-b6d8-8c71-3b36-86f0247d81ba@ipfire.org>
2021-05-24 19:43 ` Bernhard Bitsch
2021-05-24 21:21   ` nateos2g [this message]
2021-05-24 14:04 nateos2g
     [not found] <mailman.0.1621829297.2683.development@lists.ipfire.org>
2021-05-24  4:31 ` nateos2g
2021-05-24 10:39   ` Matthias Fischer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=40d9b29b-9613-75ac-4c58-855e1aa6adc3@fastmail.com \
    --to=nateos2g@fastmail.com \
    --cc=development@lists.ipfire.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox