x86 Status Bug

Anbindung von FS20-Komponenten, ELV-Wetterstationen, EnOcean und DMX an HomeMatic

Moderator: Co-Administratoren

Antworten
quickmic
Beiträge: 518
Registriert: 20.01.2011, 14:39
Hat sich bedankt: 5 Mal
Danksagung erhalten: 4 Mal

x86 Status Bug

Beitrag von quickmic » 19.07.2017, 08:28

Kleiner Schoenheitsfehler in der Status-Uebersicht. Ab ca 20TB gibts Probleme

Cuxd 1.10c x86:

Code: Alles auswählen

 Filesystem: /mnt/storage0      ext4     (rw) Total 3849674404k  Used 1902164508k (49.4%)  Free 1947509896k (50.6%)
  Filesystem: /mnt/storage1      ext4     (rw) 
  Filesystem: /mnt/storage2      ext4     (rw) Total 13544744800k  Used 13151376276k (97.1%)  Free  393368524k ( 2.9%)
shell df:

Code: Alles auswählen

/dev/sdc1       3849674404  1902148124 1947509896  50% /mnt/storage0
/dev/sda1      20397056820 19489297064  907743372  96% /mnt/storage1
/dev/sdb1      13544744800 13151359892  393368524  98% /mnt/storage2

uptime stimmt auch nicht:

Code: Alles auswählen

 CUxD-Uptime(1.10c):   -4 Tag(e) -22:-11:-43, 103880 Bytes belegt, Compiled Jun 16 2017 15:42:44
  CCU-Uptime(2.27.7):    0 Tag(e) 18:54:45, load-average: 2.36 2.47 2.39, 10s-cpu-load: 17.5%

Benutzeravatar
uwe111
Beiträge: 4819
Registriert: 26.02.2011, 22:22
Hat sich bedankt: 3 Mal
Danksagung erhalten: 245 Mal
Kontaktdaten:

Re: Status Bug

Beitrag von uwe111 » 19.07.2017, 16:36

Zeige mir bitte auch mal die Zeilen auf der Statusseite zu Speicher, CPU und Linux-Version Deines Systems.
quickmic hat geschrieben:Kleiner Schoenheitsfehler in der Status-Uebersicht. Ab ca 20TB gibts Probleme
Das muss an der von mir verwendeten statfs()-Funktion liegen. Das könnte man mal mit statvfs() testen.

Code: Alles auswählen

char *get_fs_stat(const char *fspath) {
  struct statfs FSBuf;
  char *buf = malloc(80);
  if (statfs(fspath, &FSBuf) == 0) {
    long long total,avail,used;
    float usedp,availp;
    total = (long long) FSBuf.f_blocks * (FSBuf.f_bsize / 1024);
    avail = (long long) FSBuf.f_bavail * (FSBuf.f_bsize / 1024);
    used = total - avail;
    usedp = 100 * ((float) used / (float) total);
    availp = 100 * ((float) avail / (float) total);
    snprintf(buf,80,"Total %10lldk  Used %10lldk (%4.1f%%)  Free %10lldk (%4.1f%%)",total,used,usedp,avail,availp);
  } else *buf = 0;
  return buf;
}
quickmic hat geschrieben:uptime stimmt auch nicht:
Das mache ich so:

Code: Alles auswählen

/* get the uptime from /proc/uptime
-----------------------------------------------------------*/
long get_uptime(void) {
  char line[50] = "/proc/uptime";
  FILE *f;
  long upsec = 0;
  line[49] = 0;
  if ((f = fopen(line,"r"))) {
    if (fgets(line,49,f)) upsec = atol(line);
    fclose(f);
  }
  return upsec;
}

/* get the starttime from /proc/<pid>/stat
-----------------------------------------------------------*/
long get_starttime_pid(int pid) {
  char line[512];
  FILE *f;
  long starttime = 0;
  line[511] = 0;
  if (pid) {
    sprintf(line,"/proc/%d/stat",pid);
    if ((f = fopen(line,"r"))) {
      if (fgets(line,511,f)) {
        char i = 0,*ptr = strtok(line," ");
        while (ptr) {
          i++;
          if (i == 22) {
            starttime = atol(ptr);
            starttime /= 100;
            break;
          }  
          ptr = strtok(NULL," ");
        }
      }
      fclose(f);
    }  
  }
  return starttime;
}

// und dann später...
long d,h,m,s;
long upcux;
long upsys = get_uptime();
long start_cux = get_starttime_pid(getpid());
upcux = upsys - start_cux;

// hier die Berechnung der Tage, Stunden, Minuten, Sekunden ...
d = upcux / 86400;
h = (upcux - (d*86400)) / 3600;
m = (upcux - (d*86400) - (h*3600)) / 60;
s = upcux - (d*86400) - (h*3600) - (m*60);
Das kannst Du gerne mal auf Deinem System genauer untersuchen.
Wie sehen Deine /proc/uptime und /proc/<cuxd-pid>/stat Files aus?

Viele Grüße

Uwe
Alle sagten: Das geht nicht. Dann kam einer, der wußte das nicht und hat's einfach gemacht.
SPENDEN :wink: Download: CUxD 2.11, SSH KeyDir

quickmic
Beiträge: 518
Registriert: 20.01.2011, 14:39
Hat sich bedankt: 5 Mal
Danksagung erhalten: 4 Mal

Re: Status Bug

Beitrag von quickmic » 19.07.2017, 20:07

Teste ich asap, und gib dir dann bescheid.

lg

Benutzeravatar
uwe111
Beiträge: 4819
Registriert: 26.02.2011, 22:22
Hat sich bedankt: 3 Mal
Danksagung erhalten: 245 Mal
Kontaktdaten:

Re: x86 Status Bug

Beitrag von uwe111 » 20.07.2017, 10:18

Das würde mich aber trotzdem interessieren: :wink:
uwe111 hat geschrieben:Zeige mir bitte auch mal die Zeilen auf der Statusseite zu Speicher, CPU und Linux-Version Deines Systems.
Viele Grüße

Uwe
Alle sagten: Das geht nicht. Dann kam einer, der wußte das nicht und hat's einfach gemacht.
SPENDEN :wink: Download: CUxD 2.11, SSH KeyDir

quickmic
Beiträge: 518
Registriert: 20.01.2011, 14:39
Hat sich bedankt: 5 Mal
Danksagung erhalten: 4 Mal

Re: x86 Status Bug

Beitrag von quickmic » 23.07.2017, 09:16

Code: Alles auswählen

 USB 12-1 - (0825) [AUDIO] - Wed Jul 19 08:08:01 2017
  USB 12-2 - {NONE} Transmitter Stick [FF] - /dev/ttyUSB1 - Wed Jul 19 08:08:01 2017
  USB 12-3 - USB2.0 Hub              [HUB] - Wed Jul 19 08:08:01 2017
  USB 12-3.4 - (0825) [AUDIO] - Wed Jul 19 08:08:01 2017
  USB 12-4 - (0825) [AUDIO] - Wed Jul 19 08:08:01 2017
  USB 13-3 - USB3.0 Hub              [HUB] - Wed Jul 19 08:08:01 2017
  USB 6-1 - {NONE} FT232R USB UART [FF] - /dev/ttyUSB0 - Wed Jul 19 08:08:01 2017
  Kein TTY-Device connected!

  Erfolgreich mit HomeMatic-CCU 127.0.0.1:8181 verbunden!

  als RPC-Server(INIT) von HomeMatic-CCU (14449) angefordert!

  Diese Web-Seite wurde aufgerufen von: 192.168.0.50

  CUxD-Uptime(1.10c):    0 Tag(e) -21:-42:-12, 103904 Bytes belegt, Compiled Jun 16 2017 15:42:44
  CCU-Uptime(2.27.7):    4 Tag(e) 19:24:16, load-average: 4.35 3.87 4.04, 10s-cpu-load: 31.6%
  Speicher:  Total 4194304k  Used 1411532k  Free 2782772k  (Cached 40044k)
  CPU(1): Intel(R) Xeon(R) CPU           X5650  @ 2.67GHz [5345.40 bogomips]
  CPU(2): Intel(R) Xeon(R) CPU           X5650  @ 2.67GHz [5345.40 bogomips]
  CPU(3): Intel(R) Xeon(R) CPU           X5650  @ 2.67GHz [5345.40 bogomips]
  CPU(4): Intel(R) Xeon(R) CPU           X5650  @ 2.67GHz [5345.40 bogomips]
  CPU(5): Intel(R) Xeon(R) CPU           X5650  @ 2.67GHz [5345.40 bogomips]
  CPU(6): Intel(R) Xeon(R) CPU           X5650  @ 2.67GHz [5345.40 bogomips]
  CPU(7): Intel(R) Xeon(R) CPU           X5650  @ 2.67GHz [5345.40 bogomips]
  CPU(8): Intel(R) Xeon(R) CPU           X5650  @ 2.67GHz [5345.40 bogomips]
  CPU(9): Intel(R) Xeon(R) CPU           X5650  @ 2.67GHz [5345.40 bogomips]
  CPU(10): Intel(R) Xeon(R) CPU           X5650  @ 2.67GHz [5345.40 bogomips]
  CPU(11): Intel(R) Xeon(R) CPU           X5650  @ 2.67GHz [5345.40 bogomips]
  CPU(12): Intel(R) Xeon(R) CPU           X5650  @ 2.67GHz [5345.40 bogomips]
  Linux version 4.10.15-1-pve (root@stretchbuild) (gcc version 6.3.0 20170516 (Debian 6.3.0-18) ) #1 SMP PVE 4.10.15-15 (Fri, 23 Jun 2017 08:57:55 +0200)

  Filesystem: /                  ext4     (rw) Total    6127168k  Used    3098696k (50.6%)  Free    3028472k (49.4%)
  Filesystem: /mnt/transfer      zfs      (rw) Total  471313664k  Used   87157504k (18.5%)  Free  384156160k (81.5%)
  Filesystem: /mnt/storage0      ext4     (rw) Total 3849674404k  Used 1866865828k (48.5%)  Free 1982808576k (51.5%)
  Filesystem: /mnt/storage1      ext4     (rw) 
  Filesystem: /mnt/storage2      ext4     (rw) Total 13544744800k  Used 13151376276k (97.1%)  Free  393368524k ( 2.9%)
  Filesystem: /sys/fs/fuse/connections fusectl  (rw) Total          0k  Used          0k (-nan%)  Free          0k (-nan%)
  Filesystem: /proc/cpuinfo      fuse.lxcfs(rw) Total          0k  Used          0k (-nan%)  Free          0k (-nan%)
  Filesystem: /proc/diskstats    fuse.lxcfs(rw) Total          0k  Used          0k (-nan%)  Free          0k (-nan%)
  Filesystem: /proc/meminfo      fuse.lxcfs(rw) Total          0k  Used          0k (-nan%)  Free          0k (-nan%)
  Filesystem: /proc/stat         fuse.lxcfs(rw) Total          0k  Used          0k (-nan%)  Free          0k (-nan%)
  Filesystem: /proc/swaps        fuse.lxcfs(rw) Total          0k  Used          0k (-nan%)  Free          0k (-nan%)
  Filesystem: /proc/uptime       fuse.lxcfs(rw) Total          0k  Used          0k (-nan%)  Free          0k (-nan%)
  Filesystem: /run               tmpfs    (rw) Total    4944936k  Used         44k ( 0.0%)  Free    4944892k (100.0%)
  Filesystem: /run/lock          tmpfs    (rw) Total       5120k  Used          0k ( 0.0%)  Free       5120k (100.0%)
  Filesystem: /run/shm           tmpfs    (rw) Total     419420k  Used       1964k ( 0.5%)  Free     417456k (99.5%)

  CCU-MAC:     66:30:63:61:63:39
  HM-Config:   /etc/config/homematic.regadom(5682557) OK! - Sun Jul 23 01:51:50 2017
  CUxD-Config: /usr/local/addons/cuxd/cuxd.ps(1731) - Sun Jul 23 01:09:02 2017
  CUxD-Log(9): /var/log/cuxd(125005) - Sun Jul 23 09:15:52 2017
               /var/log/cuxd.0(1000080) - Sun Jul 23 09:15:43 2017

Antworten

Zurück zu „CUxD“