JVM学习--开启应用的gc日志功能
一、开启方法
For Java 1.4, 5, 6, 7, 8 pass this JVM argument to your application: -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:<file-path>
For Java 9, pass the JVM argument: -Xlog:gc*:file=<file-path>
file-path: is the location where GC log file will be written
如果是需要给运行中的JVM打开日志功能,可参考:
http://www.importnew.com/15722.html
二、测试
代码:
public class testAllocation {
private static final int _1MB=*;
public static void main(String[] args) {
byte[] allocation1;
byte[] allocation2;
byte[] allocation3;
byte[] allocation4;
allocation1=new byte[*_1MB];
allocation2=new byte[*_1MB];
allocation3=new byte[*_1MB];
allocation4=new byte[*_1MB]; //出现一次Minor GC
}
}
1、输出到标准输出
E:\javabase\out\production\javabase>java -XX:+PrintGCDetails -XX:+PrintGCDateSta
mps -Xms20M -Xmx20M -Xmn10M testAllocation
Heap
PSYoungGen total 9216K, used 7644K [0x00000000ff600000, 0x0000000100000000
, 0x0000000100000000)
eden space 8192K, % used [0x00000000ff600000,0x00000000ffd77070,0x00000000ff
e00000)
from space 1024K, % used [0x00000000fff00000,0x00000000fff00000,0x00000001000
)
to space 1024K, % used [0x00000000ffe00000,0x00000000ffe00000,0x00000000fff
)
ParOldGen total 10240K, used 4096K [0x00000000fec00000, 0x00000000ff60000
, 0x00000000ff600000)
object space 10240K, % used [0x00000000fec00000,0x00000000ff000010,0x0000000
0ff600000)
Metaspace used 2521K, capacity 4486K, committed 4864K, reserved 1056768K
class space used 271K, capacity 386K, committed 512K, reserved 1048576K
2、输出到文件
E:\javabase\out\production\javabase>java -XX:+PrintGCDetails -XX:+PrintGCDateSta
mps -Xloggc:testAllocation-gc.log -Xms20M -Xmx20M -Xmn10M testAllocation

JVM学习--开启应用的gc日志功能的更多相关文章
- JVM学习之Eclipse输出GC日志
Java应用启动时,可以通过设置verbose参数来输出JVM的gc情况,命令如下:-verbose:gc或者-XX:+PrintGC在Eclipse中可以通过Run As|Run Configura ...
- JVM调优——之CMS GC日志分析
最近在学习JVM和GC调优,今天总结下CMS的一些特点和要点,让我们先简单的看下整个堆年轻代和年老代的垃圾收集器组合(以下配合java8完美支持,其他版本可能稍有不同),其中标红线的则是我们今天要着重 ...
- Linux服务器开启tomcat的gc日志
压力测试,为了能监控长期对gc的变化的情况,那么就需要在tomcat中进行配置相关的gc输入日志,以便后续来对gc中进行分析 工具 :linux+tomcat 1.进入到了tomcat的bin的目录下 ...
- JVM学习之JVM1.6 GC详解
转自:http://www.cnblogs.com/ggjucheng/p/3977384.html,多谢分享 前言 JVM GC是JVM的内存回收算法,调整JVM GC(Garbage Colle ...
- JVM命令行选项及GC日志
转:http://blog.csdn.net/q291611265/article/details/48028189 一.设置参数 在使用eclipse编译器的时候,可以采用以下的运行方式来设置虚拟机 ...
- 浅析JVM中的GC日志
目录 一.GC日志的格式分析 二.运行时开启GC日志 一.GC日志的格式分析 在讲述GC日志之前,我们先来运行下面这段代码 package com.example; public class Test ...
- JVM实用参数(八)GC日志
本系列的最后一部分是有关垃圾收集(GC)日志的JVM参数.GC日志是一个很重要的工具,它准确记录了每一次的GC的执行时间和执行结果,通过分析GC日志可以优化堆设置和GC设置,或者改进应用程序的对象分配 ...
- JVM小册(1)------jstat和Parallel GC日志
JVM小册(1)------jstat和Parallel GC日志 一. 背景 在生产环境中,有时候会遇到OOM的情况,抛开Arthas 等比较成熟的工具以外,我们可以使用java 提供的jatat和 ...
- JVM学习——垃圾回收GC(学习过程)
JVM学习-垃圾回收(GC) 2020年02月19日06:03:56,开始学习垃圾回收,学习资料来源(张龙老师的JVM课程) JVM内存数据区域知识复习 学习垃圾回收之前,要对JVM内部的内存区域有详 ...
随机推荐
- PHP中单引号与双引号的区别分析
From: http://www.jb51.net/article/53973.htm 在PHP中,我们可以使用单引号或者双引号来表示字符串.不过我们作为开发者,应该了解其中的区别.单引号与双引号对于 ...
- 安卓开发笔记——关于AsyncTask的使用
在安卓开发中,我们经常要进行一些耗时操作,比如数据库操作,获取网络资源,读取内存文件等等,当我们在处理这些耗时操作的时候,如果我们直接在UI主线程进行,那么可能会导致阻塞UI主线程,使得UI界面卡顿, ...
- git clone Google的代码失败的解决方法
git clone Google的volley代码遇Q. 想到用代理服务器就可以解决这个问题.Google了一下解决方法,记录下来,分享一下. git config:
- mongodb的一些性能管理工具
1.db.serverStatus()//查看实例运行状态,例如查看当前的连接数之类的 2. mms云平台 //由10gen提供的云管理平台//mms=mongo manage service htt ...
- AWS系列-创建 IAM 用户
创建 IAM 用户(控制台) 官方文档 https://docs.aws.amazon.com/zh_cn/IAM/latest/UserGuide/introduction.html 通过 AWS ...
- MySQL Study之--MySQL普通用户无法本地登陆
MySQL Study之--MySQL普通用户无法本地登陆 在安装完毕MySQL后,我们通常加入拥有对应权限的普通用户用来訪问数据库.在使用用户本地登录数据库的时候,常常会出现怎么登录也无 ...
- Nginx: error while loading shared libraries: libpcre.so.1解决
Shell代码 [root@tmsapp65 conf]# /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx: error while l ...
- Python函数相关
Python中的函数也是一种对象,而且函数还是一等公民.函数能作为参数,也能作为返回值,这使得Python中的函数变得很灵活.想想前面两篇中介绍的通过内嵌函数实现的装饰器和闭包. 下面就介绍一下Pyt ...
- android 读书笔记 1
四层linux 内核层library java 虚拟机frameworkapplication 四组件活动(activity), 服务(service), 广播接收器(broadcast receiv ...
- 使用 Json 文件存储
将爬取到的数据以 Json 文件形式存储: import json import requests req = requests.get('http://www.baidu.com/') data = ...