GithubHelp home page GithubHelp logo

Support for wider terminals about jvmtop HOT 5 OPEN

allwmh avatar allwmh commented on July 19, 2024
Support for wider terminals

from jvmtop.

Comments (5)

GoogleCodeExporter avatar GoogleCodeExporter commented on July 19, 2024
jvmtop is currently using a fixed-terminal-width of 80 characters which is a 
simple and compatible approach which is also used by many unix tools.
Because of that some outputs which have a variable length (e.g. MAIN-CLASS 
value) might get truncated in order to not exceed their maximum column size.
This is expected and intentionally implemented.

It would be possible to detect the current terminal width in some environments 
(e.g. in an ANSI-Terminal) and hence having more space for variable-sized 
columns, however, currently jvmtop does not include such a functionality.

Original comment by [email protected] on 7 Aug 2013 at 10:20

  • Changed title: Output getting truncated

from jvmtop.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 19, 2024

Original comment by [email protected] on 9 Aug 2013 at 8:18

  • Changed title: Support for wider terminals
  • Added labels: Type-Enhancement
  • Removed labels: Type-Defect

from jvmtop.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 19, 2024
You may want to consider. regular top, for example, displays the command in the 
last column.  This is similar to your main-class column.  It's your only column 
that is subject to massive size variability.  By displaying the command in the 
last column, it's easy for top to allow the command to grow to fill the 
available space, even though the short name is the displayed by default.  For 
example:

Default top:
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
11905 jboss     20   0 1574m  60m  10m S  1.7  3.2   0:10.62 java
 8532 jboss     20   0 1573m  61m  10m S  0.3  3.3   1:04.26 java

After pressing 'c' to toggle the command name / full command line:
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
11905 jboss     20   0 1574m  60m  11m S  1.3  3.2   0:12.03 java -cp 
/home/jboss/bin/jvmtop.jar:/usr/lib/jvm/java-1.7
 3944 jboss     20   0 1613m 201m  18m S  1.0 10.7   2:59.73 java -D[Standalone] -server -XX:+UseCompressedOops -XX:+T
 8532 jboss     20   0 1573m  61m  10m S  0.7  3.3   1:04.63 java -cp /home/jboss/bin/jvmtop.jar:/usr/lib/jvm/java-1.7
    1 root      20   0 19228 1484 1212 S  0.0  0.1   0:01.38 /sbin/init

Consoles limited to 80 character width would simply truncate what they can't 
display (or you could do what the ps command does if -w is specified:

[jboss@testbox ~]$ ps -u jboss
  PID TTY          TIME CMD
 3891 ?        00:00:00 standalone.sh
 3944 ?        00:03:01 java
 5936 pts/1    00:00:00 bash
 6721 pts/2    00:00:00 bash
 8527 pts/2    00:00:00 jvmtop
 8532 pts/2    00:01:05 java
11882 pts/3    00:00:00 bash
11900 pts/3    00:00:00 jvmtop
11905 pts/3    00:00:16 java
12026 pts/1    00:00:00 ps

[jboss@testbox ~]$ ps -u jboss -f
UID        PID  PPID  C STIME TTY          TIME CMD
jboss     3891  3888  0 Aug08 ?        00:00:00 /bin/sh 
/home/jboss/jboss-as-7.1.1.Final/bin/standalone.sh -c standalo
jboss     3944  3891  0 Aug08 ?        00:03:01 java -D[Standalone] -server 
-XX:+UseCompressedOops -XX:+TieredCompilat
jboss     5936  5935  0 Aug08 pts/1    00:00:00 -bash
jboss     6721  6720  0 Aug08 pts/2    00:00:00 -bash
jboss     8527  6721  0 Aug08 pts/2    00:00:00 /bin/sh /home/jboss/bin/jvmtop 
-d 10 3944
jboss     8532  8527  0 Aug08 pts/2    00:01:05 java -cp 
/home/jboss/bin/jvmtop.jar:/usr/lib/jvm/java-1.7.0-openjdk-1.
jboss    11882 11881  0 03:22 pts/3    00:00:00 -bash
jboss    11900 11882  0 03:22 pts/3    00:00:00 /bin/sh /home/jboss/bin/jvmtop
jboss    11905 11900  2 03:22 pts/3    00:00:17 java -cp 
/home/jboss/bin/jvmtop.jar:/usr/lib/jvm/java-1.7.0-openjdk-1.
jboss    12034  5936  0 03:35 pts/1    00:00:00 ps -u jboss -f

ps -u jboss -fw
UID        PID  PPID  C STIME TTY          TIME CMD
jboss     3891  3888  0 Aug08 ?        00:00:00 /bin/sh 
/home/jboss/jboss-as-7.1.1.Final/bin/standalone.sh -c standalone.xml
jboss     3944  3891  0 Aug08 ?        00:03:01 java -D[Standalone] -server 
-XX:+UseCompressedOops -XX:+TieredCompilation -Xms64m -X
jboss     5936  5935  0 Aug08 pts/1    00:00:00 -bash
jboss     6721  6720  0 Aug08 pts/2    00:00:00 -bash
jboss     8527  6721  0 Aug08 pts/2    00:00:00 /bin/sh /home/jboss/bin/jvmtop 
-d 10 3944
jboss     8532  8527  0 Aug08 pts/2    00:01:05 java -cp 
/home/jboss/bin/jvmtop.jar:/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.25.x86_64/
jboss    11882 11881  0 03:22 pts/3    00:00:00 -bash
jboss    11900 11882  0 03:22 pts/3    00:00:00 /bin/sh /home/jboss/bin/jvmtop
jboss    11905 11900  2 03:22 pts/3    00:00:17 java -cp 
/home/jboss/bin/jvmtop.jar:/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.25.x86_64/
jboss    12033  5936  0 03:35 pts/1    00:00:00 ps -u jboss -fw

[jboss@testbox ~]$ ps -u jboss -fww
UID        PID  PPID  C STIME TTY          TIME CMD
jboss     3891  3888  0 Aug08 ?        00:00:00 /bin/sh 
/home/jboss/jboss-as-7.1.1.Final/bin/standalone.sh -c standalone.xml
jboss     3944  3891  0 Aug08 ?        00:03:01 java -D[Standalone] -server 
-XX:+UseCompressedOops -XX:+TieredCompilation -Xms64m -Xmx512m 
-XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true 
-Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 
-Dsun.rmi.dgc.server.gcInterval=3600000 
-Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true 
-Djboss.server.default.config=standalone.xml 
-Dorg.jboss.boot.log.file=/home/jboss/jboss-as-7.1.1.Final/standalone/log/boot.l
og 
-Dlogging.configuration=file:/home/jboss/jboss-as-7.1.1.Final/standalone/configu
ration/logging.properties -jar 
/home/jboss/jboss-as-7.1.1.Final/jboss-modules.jar -mp 
/home/jboss/jboss-as-7.1.1.Final/modules -jaxpmodule javax.xml.jaxp-provider 
org.jboss.as.standalone -Djboss.home.dir=/home/jboss/jboss-as-7.1.1.Final -c 
standalone.xml
jboss     5936  5935  0 Aug08 pts/1    00:00:00 -bash
jboss     6721  6720  0 Aug08 pts/2    00:00:00 -bash
jboss     8527  6721  0 Aug08 pts/2    00:00:00 /bin/sh /home/jboss/bin/jvmtop 
-d 10 3944
jboss     8532  8527  0 Aug08 pts/2    00:01:06 java -cp 
/home/jboss/bin/jvmtop.jar:/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.25.x86_64/lib/t
ools.jar com.jvmtop.JvmTop --delay 10 3944
jboss    11882 11881  0 03:22 pts/3    00:00:00 -bash
jboss    11900 11882  0 03:22 pts/3    00:00:00 /bin/sh /home/jboss/bin/jvmtop
jboss    11905 11900  2 03:22 pts/3    00:00:17 java -cp 
/home/jboss/bin/jvmtop.jar:/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.25.x86_64/lib/t
ools.jar com.jvmtop.JvmTop
jboss    12039  5936  0 03:35 pts/1    00:00:00 ps -u jboss -fww







Original comment by DaveParillo on 9 Aug 2013 at 10:36

from jvmtop.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 19, 2024
I've taken the liberty of coding a patch that adds a -w/--width flag to specify 
the width of the console, so those columns may be stretched. Nowadays most 
people use UI's with flexible console sizes, so this would accommodate those 
people.

Importantly, the default (also minimum accepted) size is still 80, but one can 
go as high as possible.  The patch only affects the profiler - I didn't take 
the time to work on the other screens, but that shouldn't be too much trouble.

Original comment by [email protected] on 15 Oct 2014 at 6:13

Attachments:

from jvmtop.

GoogleCodeExporter avatar GoogleCodeExporter commented on July 19, 2024
Diego,
thank you for your patch.
I'll have a look and try to reintegrate this within the code base.

Original comment by [email protected] on 16 Feb 2015 at 4:29

from jvmtop.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.