Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (101)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (309)
Collections:
Other Resources:
JDK 11 jdk.jfr.jmod - JFR Module
JDK 11 jdk.jfr.jmod is the JMOD file for JDK 11 JFR module.
JDK 11 JFR module compiled class files are stored in \fyicenter\jdk-11.0.1\jmods\jdk.jfr.jmod.
JDK 11 JFR module compiled class files are also linked and stored in the \fyicenter\jdk-11.0.1\lib\modules JImage file.
JDK 11 JFR module source code files are stored in \fyicenter\jdk-11.0.1\lib\src.zip\jdk.jfr.
You can click and view the content of each source code file in the list below.
✍: FYIcenter
⏎ jdk/jfr/internal/dcmd/DCmdDump.java
/* * Copyright (c) 2012, 2018, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package jdk.jfr.internal.dcmd; import java.io.IOException; import java.nio.file.InvalidPathException; import java.time.Duration; import java.time.Instant; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.LocalTime; import java.time.ZoneId; import java.time.ZonedDateTime; import java.time.format.DateTimeParseException; import jdk.jfr.FlightRecorder; import jdk.jfr.Recording; import jdk.jfr.internal.LogLevel; import jdk.jfr.internal.LogTag; import jdk.jfr.internal.Logger; import jdk.jfr.internal.PlatformRecorder; import jdk.jfr.internal.PlatformRecording; import jdk.jfr.internal.PrivateAccess; import jdk.jfr.internal.SecuritySupport.SafePath; import jdk.jfr.internal.Utils; import jdk.jfr.internal.WriteableUserPath; /** * JFR.dump * */ // Instantiated by native final class DCmdDump extends AbstractDCmd { /** * Execute JFR.dump. * * @param name name or id of the recording to dump, or <code>null</code> to dump everything * * @param filename file path where recording should be written, not null * @param maxAge how far back in time to dump, may be null * @param maxSize how far back in size to dump data from, may be null * @param begin point in time to dump data from, may be null * @param end point in time to dump data to, may be null * @param pathToGcRoots if Java heap should be swept for reference chains * * @return result output * * @throws DCmdException if the dump could not be completed */ public String execute(String name, String filename, Long maxAge, Long maxSize, String begin, String end, Boolean pathToGcRoots) throws DCmdException { if (LogTag.JFR_DCMD.shouldLog(LogLevel.DEBUG)) { Logger.log(LogTag.JFR_DCMD, LogLevel.DEBUG, "Executing DCmdDump: name=" + name + ", filename=" + filename + ", maxage=" + maxAge + ", maxsize=" + maxSize + ", begin=" + begin + ", end" + end + ", path-to-gc-roots=" + pathToGcRoots); } if (FlightRecorder.getFlightRecorder().getRecordings().isEmpty()) { throw new DCmdException("No recordings to dump from. Use JFR.start to start a recording."); } if (maxAge != null) { if (end != null || begin != null) { throw new DCmdException("Dump failed, maxage can't be combined with begin or end."); } if (maxAge < 0) { throw new DCmdException("Dump failed, maxage can't be negative."); } if (maxAge == 0) { maxAge = Long.MAX_VALUE / 2; // a high value that won't overflow } } if (maxSize!= null) { if (maxSize < 0) { throw new DCmdException("Dump failed, maxsize can't be negative."); } if (maxSize == 0) { maxSize = Long.MAX_VALUE / 2; // a high value that won't overflow } } Instant beginTime = parseTime(begin, "begin"); Instant endTime = parseTime(end, "end"); if (beginTime != null && endTime != null) { if (endTime.isBefore(beginTime)) { throw new DCmdException("Dump failed, begin must preceed end."); } } Duration duration = null; if (maxAge != null) { duration = Duration.ofNanos(maxAge); beginTime = Instant.now().minus(duration); } Recording recording = null; if (name != null) { recording = findRecording(name); } PlatformRecorder recorder = PrivateAccess.getInstance().getPlatformRecorder(); synchronized (recorder) { dump(recorder, recording, name, filename, maxSize, pathToGcRoots, beginTime, endTime); } return getResult(); } public void dump(PlatformRecorder recorder, Recording recording, String name, String filename, Long maxSize, Boolean pathToGcRoots, Instant beginTime, Instant endTime) throws DCmdException { try (PlatformRecording r = newSnapShot(recorder, recording, pathToGcRoots)) { r.filter(beginTime, endTime, maxSize); if (r.getChunks().isEmpty()) { throw new DCmdException("Dump failed. No data found in the specified interval."); } SafePath dumpFile = resolvePath(recording, filename); // Needed for JVM Utils.touch(dumpFile.toPath()); r.dumpStopped(new WriteableUserPath(dumpFile.toPath())); reportOperationComplete("Dumped", name, dumpFile); } catch (IOException | InvalidPathException e) { throw new DCmdException("Dump failed. Could not copy recording data. %s", e.getMessage()); } } private Instant parseTime(String time, String parameter) throws DCmdException { if (time == null) { return null; } try { return Instant.parse(time); } catch (DateTimeParseException dtp) { // fall through } try { LocalDateTime ldt = LocalDateTime.parse(time); return ZonedDateTime.of(ldt, ZoneId.systemDefault()).toInstant(); } catch (DateTimeParseException dtp) { // fall through } try { LocalTime lt = LocalTime.parse(time); LocalDate ld = LocalDate.now(); Instant instant = ZonedDateTime.of(ld, lt, ZoneId.systemDefault()).toInstant(); Instant now = Instant.now(); if (instant.isAfter(now) && !instant.isBefore(now.plusSeconds(3600))) { // User must have meant previous day ld = ld.minusDays(1); } return ZonedDateTime.of(ld, lt, ZoneId.systemDefault()).toInstant(); } catch (DateTimeParseException dtp) { // fall through } if (time.startsWith("-")) { try { long durationNanos = Utils.parseTimespan(time.substring(1)); Duration duration = Duration.ofNanos(durationNanos); return Instant.now().minus(duration); } catch (NumberFormatException nfe) { // fall through } } throw new DCmdException("Dump failed, not a valid %s time.", parameter); } private PlatformRecording newSnapShot(PlatformRecorder recorder, Recording recording, Boolean pathToGcRoots) throws DCmdException, IOException { if (recording == null) { // Operate on all recordings PlatformRecording snapshot = recorder.newTemporaryRecording(); recorder.fillWithRecordedData(snapshot, pathToGcRoots); return snapshot; } PlatformRecording pr = PrivateAccess.getInstance().getPlatformRecording(recording); return pr.newSnapshotClone("Dumped by user", pathToGcRoots); } }
⏎ jdk/jfr/internal/dcmd/DCmdDump.java
Or download all of them as a single archive file:
File name: jdk.jfr-11.0.1-src.zip File size: 237632 bytes Release date: 2018-11-04 Download
⇒ JDK 11 jdk.jlink.jmod - JLink Tool
2020-06-30, 48373👍, 0💬
Popular Posts:
JDK 11 jdk.jdeps.jmod is the JMOD file for JDK 11 JDeps tool, which can be invoked by the "jdeps" co...
JasperReports, the world's most popular open source business intelligence and reporting engine and J...
commons-net-1.4.1.jar is the JAR file for Apache Commons Net 1.4.1, which implements the client side...
Jetty provides an HTTP server, HTTP client, and javax.servlet container. These components are open s...
JDK 11 jdk.crypto.ec.jmod is the JMOD file for JDK 11 Crypto EC module. JDK 11 Crypto EC module comp...