www.ProFTPD.de
13. März 2007, 20:11:41 *
Willkommen Gast. Bitte einloggen oder registrieren.
Haben Sie Ihre Aktivierungs E-Mail übersehen?

Einloggen mit Benutzername, Passwort und Sitzungslänge
News: SMF - Neu installiert!
 
   Übersicht   Hilfe Suche Login Registrieren  
Seiten: [1]   Nach unten
  Drucken  
Autor Thema: Falsche Werte beim Traffic Counting in der MySQL  (Gelesen 903 mal)
0 Mitglieder und 1 Gast betrachten dieses Thema.
Schaka
ProFTPD
*
Offline Offline

Beiträge: 10


Profil anzeigen
« am: 03. April 2004, 17:07:47 »

Moin,

ich hoffe, jmd hat ne idee für folgendes problem:

in der users tabelle habe ich die 4 spalten fstor, fretr, bstor, bretr.
fstor und fretr zeigen reelle werte an, jedoch bstor und betr nicht.
ich habe 1400 MB hochgeladen und bstor zeigt 784626917 an, also
ca. 750 MB.

bstor und bretr sind bigint(20)... und ja... ich habe den thread gelesen,
dass proftpd nur integer handeln kann. aber ist diese grenze nicht
laut readme bei 2 GB und nicht schon bei 750 MB?



thx für eure antworten.
Gespeichert
graem_l
Gast
« Antwort #1 am: 07. April 2004, 22:16:08 »

ich kann dir zwar nicht helfen aber es würde mich wundern was das für ein modul ist? und was man in der Confg einstellen muss?

Würde mich freuen wenn du mir das sagen könntest, ich suche das nämlich auch

Mfg
Gespeichert
Anonymous
Gast
« Antwort #2 am: 07. April 2004, 23:24:11 »

./configure -with-modules=mod_sql:mod_sql_mysql

das is das minimum...

ne anständige sql-dump findest du auf der proftpd.de seite.

und die 4 spalten, die du in der users-table ergänzen musst, sind:
fstor, fretr, bstor, bretr

in der conf:
SQLRatioStats on

und natürlich die ganzen anderen SQL direktiven... findest du auch ne bsp conf auf der proftpd.de seite


das wars


PS: weiß wirklich keiner, warum in den bytes-spalten so ungenaue werte drin sind? ... ich mein, 50% zu wenig ist echt schon ein hartes stück...
Gespeichert
stonki
Administrator
ProFTPD
*****
Offline Offline

Beiträge: 1853


15318939
Profil anzeigen WWW E-Mail
« Antwort #3 am: 08. April 2004, 07:52:45 »

Zitat von: "Anonymous"

PS: weiß wirklich keiner, warum in den bytes-spalten so ungenaue werte drin sind? ... ich mein, 50% zu wenig ist echt schon ein hartes stück...


leider nicht. Wenn Du mir eine Schritt fuer Schritt Anleitung postet zum nachvollziehen, dann will ich das gerne ueber Ostern probieren und dann ggf. Castaglia bescheid geben, dass er das fuer 1.2.10 noch fixen soll..

cu
stonki
Gespeichert

www.stonki.de:    the more I see, the more I know.......
www.proftpd.de:   Deutsche ProFTPD Dokumentation
www.krename.net:  Der Batch Renamer für KDE
www.kbarcode.net: Die Barcode Solution für KDE
Schaka
ProFTPD
*
Offline Offline

Beiträge: 10


Profil anzeigen
« Antwort #4 am: 08. April 2004, 11:01:49 »

na gut, auf gehts - das ist nen fairer kompromiss Zwinkernd

kleine anmerkung vorab: ftpd LOKAL bauen... weil diese unterschiede erst bei xxx MB kommen... und ich nicht glaube, dass du bock hast, 500MB zu testzwecken übers internet zu schieben.

Code:

./configure -with-modules=mod_sql:mod_sql_mysql --prefix=/home/foo --with-includes=/foo/include:/foo/include/mysql --with-libraries=/foo/lib:/foo/lib/mysql


in deine proftpd.conf
die drei großgeschriebenen wörter ersetzen

Code:

SQLAuthTypes Plaintext
SQLAuthenticate users*
SQLConnectInfo TABLENAME@localhost USERNAME PASSWORT
SQLDefaultGID 65534
SQLDefaultUID 65534
SQLMinUserGID 100
SQLMinUserUID 500
SQLUserInfo users username password uid gid homedir shell

SQLRatioStats on


hier kommt ein mysql dump:

Code:

#
# Tabellenstruktur für Tabelle `groups`
#

CREATE TABLE `groups` (
  `groupname` text NOT NULL,
  `gid` smallint(5) unsigned NOT NULL default '0',
  `members` text NOT NULL,
  UNIQUE KEY `gid` (`gid`)
) TYPE=MyISAM;

# --------------------------------------------------------

#
# Tabellenstruktur für Tabelle `users`
#

CREATE TABLE `users` (
  `username` varchar(30) NOT NULL default '',
  `password` varchar(80) NOT NULL default '',
  `uid` smallint(5) unsigned NOT NULL default '0',
  `gid` smallint(5) unsigned NOT NULL default '0',
  `homedir` text NOT NULL,
  `shell` text NOT NULL,
  `fstor` bigint(20) unsigned NOT NULL default '0',
  `fretr` bigint(20) unsigned NOT NULL default '0',
  `bstor` bigint(20) unsigned NOT NULL default '0',
  `bretr` bigint(20) unsigned NOT NULL default '0',
  UNIQUE KEY `userid` (`username`),
  UNIQUE KEY `uid` (`uid`)
) TYPE=MyISAM;



Die folgenden schritte zum user erstellen... dabei weiß ich selbst nicht, ob es andere, einfachere lösungen gibt, aber ich poste hier mal eine lösung, die klappt.

neuen user erstellen... mit adduser ... oder /etc/passwd editieren
bash auf /bin/false
uid merken.

in mysql in die groups table einfügen:

users
100 (meistens, evtl noch mal in der /etc/group nachgucken)
der erstellte username von oben


in mysql in die users table einfügen:

der erstellte username von oben
ein passwort (im klartext)
uid von oben
100 (meistens, evtl noch mal in der /etc/group nachgucken)
/foo/homeverzeichnis (das aus der /etc/passwd)
/bin/false
0
0
0
0


fertig Smiley

proftpd starten... 500 MB uppen... und staunen
Gespeichert
graem_l
Gast
« Antwort #5 am: 08. April 2004, 11:51:46 »

Ich nehme an dass diseses SQLRatioStats on automatisch die db und die tabellen auswählt ? brauchts nich noch infos? Dann kann ich ma schauen
Gespeichert
Schaka
ProFTPD
*
Offline Offline

Beiträge: 10


Profil anzeigen
« Antwort #6 am: 08. April 2004, 12:15:04 »

man könnte sich natürlich auch einfach mal schnell in der direktivenliste das SQLRatioStats angucken... was hältste von der idee? Zwinkernd
Gespeichert
stonki
Administrator
ProFTPD
*****
Offline Offline

Beiträge: 1853


15318939
Profil anzeigen WWW E-Mail
« Antwort #7 am: 08. April 2004, 12:27:20 »

Zitat von: "Schaka"

Code:

./configure -with-modules=mod_sql:mod_sql_mysql --prefix=/home/foo --with-includes=/foo/include:/foo/include/mysql --with-libraries=/foo/lib:/foo/lib/mysql



muss da fuer Ratio nix mit angegeben werden ?
Gespeichert

www.stonki.de:    the more I see, the more I know.......
www.proftpd.de:   Deutsche ProFTPD Dokumentation
www.krename.net:  Der Batch Renamer für KDE
www.kbarcode.net: Die Barcode Solution für KDE
Schaka
ProFTPD
*
Offline Offline

Beiträge: 10


Profil anzeigen
« Antwort #8 am: 08. April 2004, 13:03:51 »

ich meinte irgendwo gelesen zu haben, dass das SQLRatioStats im mod_sql drin wär...

aber sicherheitshalber kannste auch noch mod_quotatab:mod_quotatab_sql mit angeben.


btw: ich hab jetzt auch mal ne testreihe gestartet. das problem ist nicht mehr wiederholbar... egal ob TLS, ohne TLS, egal in welches verzeichnis... bei den 20 files, die ich eben hochgeladen habe, stimmte der counter zu 100%
egal, ob lokal hochgeladen oder übers internet, egal mit welchem programm, egal wie groß die datei...

aber ich werde das testen nicht aufgeben, irgendwodran muss es liegen... vielleicht am dateinamen, dass er manche dateien nicht erkennt....

ich bin am verzweifeln - aber das testen geht weiter.

und der wert von oben: 750 MB im mysql table, obwohl 1400 MB hochgeladen muss 100%ig stimmen... eher sind die 1400 MB zu wenig, weil das nur von `ls -lRh | grep username` stammt
Gespeichert
graem_l
Gast
« Antwort #9 am: 08. April 2004, 23:47:00 »

Also ich habe gerade getestet was du meinst, und ich hab ev. ne idee.


Ich habe das Modul ausgiebig getestet und bin enttäuscht weil:
Probiert mal mit einem FTP Client ein grösseres File zu downloaden, in der Mitte anzuhalten und dann weiterzumachen, in den Logs wird es schreiben 1 file mehr, ABER er zählt nur die Bytes seit dem Weitermachen!

Ev, musstest du irgendwann weitermahen mit upload? dann werden die vorherigen Bytes nicht geschrieben.....

Es muss doch eine Möglichkeit geben dies zu unterbinden.

Im Mod quotatab dasselbe, man kann seine "Downloadlimite" umgehen indem man kurz vor dem Ende des files anhält, und weitermacht, dann hat man vielleicht 100 kilo weniger im quota....


Bisschen enttäuschend :(
Gespeichert
Schaka
ProFTPD
*
Offline Offline

Beiträge: 10


Profil anzeigen
« Antwort #10 am: 09. April 2004, 03:09:55 »

es ist ja gewollt, dass dir beim resumen nur das angerechnet wird, was du tatsächlich an bytes überträgst. dass er dir ein neues file anrechnet, ist ein ungewünschter aber leider zwanghafter nebeneffekt... woher soll der ftpd wissen, dass du das file schon auf dem pc hast?

aber leider hat dies nichts mit meinem o.g. problem zu tun, da er die bytes sofort nach dem abbruch der übertragung korrekt in die table schreibt... ob ich ihm via REST eine startposition angebe (zum resumen) oder von anfang an sauge, ist egal.
Gespeichert
graem_l
Gast
« Antwort #11 am: 09. April 2004, 10:28:37 »

Ok, beim quotatab hab ich mich verrechnet, dort wird - auch wenn man anhält - die ganze bytesumme schlussendlich gerechnet.


beim SQLQuotaStats aber nicht!

Wenn du in der Hälfte pausierst und dann weitermachst, gibt 1 Fileeintrag mit der Hällfte der Bytes!
Gespeichert
stonki
Administrator
ProFTPD
*****
Offline Offline

Beiträge: 1853


15318939
Profil anzeigen WWW E-Mail
« Antwort #12 am: 09. April 2004, 13:06:23 »

Zitat von: "graem_l"
Ok, beim quotatab hab ich mich verrechnet, dort wird - auch wenn man anhält - die ganze bytesumme schlussendlich gerechnet.


beim SQLQuotaStats aber nicht!

Wenn du in der Hälfte pausierst und dann weitermachst, gibt 1 Fileeintrag mit der Hällfte der Bytes!


Das sind nun zwei verschiedene Module, oder ?
Mod_quotatab von Castaglia ist IMHO das einzigste Quotamodul, was noch weiterentwickelt wird.

cu
stonki
Gespeichert

www.stonki.de:    the more I see, the more I know.......
www.proftpd.de:   Deutsche ProFTPD Dokumentation
www.krename.net:  Der Batch Renamer für KDE
www.kbarcode.net: Die Barcode Solution für KDE
graem_l
Gast
« Antwort #13 am: 09. April 2004, 14:24:33 »

Jo mit JT von casta hab ich Kontakt und hab ihm das weitergeleitet. Dass sie ev ein Modul einbauen zur Totalberechnung der verschobenen Bytes und Files, welche auch die Angehaltenen berechnet.
Gespeichert
Seiten: [1]   Nach oben
  Drucken  
 
Gehe zu:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.2 | SMF © 2006-2007, Simple Machines LLC Prüfe XHTML 1.0 Prüfe CSS
Seite erstellt in 0.06 Sekunden mit 16 Zugriffen.