Класс LogRecord
- java.lang.Object
-
- java.util.logging.LogRecord
- Все реализованные интерфейсы:
- Serializable
public class LogRecord extends Object implements Serializable
Объекты LogRecord используются для передачи запросов логирования между фреймворком логирования и отдельными обработчиками логов.
Когда LogRecord передается в фреймворк логирования, он логически принадлежит фреймворку и больше не должен использоваться или обновляться приложением-клиентом.
Обратите внимание, что если приложение-клиент не указал явное имя метода источника и имя класса источника, то класс LogRecord автоматически выведет их, когда они будут впервые обработаны (из-за вызова getSourceMethodName или getSourceClassName), проанализировав стек вызовов. Поэтому, если обработчик логирования хочет передать LogRecord в другую нить или передать его через RMI, и если он хочет впоследствии получить информацию о имени метода или имени класса, он должен вызвать один из getSourceClassName или getSourceMethodName, чтобы принудительно заполнить значения.
Примечания по сериализации:
- Класс LogRecord сериализуем.
- Поскольку объекты в массиве параметров могут быть не сериализуемыми, при сериализации все объекты в массиве параметров записываются как соответствующие строки (используя Object.toString).
- ResourceBundle не передается как часть сериализованной формы, но имя ресурсного пула передается, и метод readObject объекта-получателя попытается найти подходящий ресурсный пул.
- С тех пор:
- 1.4
- См. также:
- Сериализованная форма
Конструкторы
| Конструктор и описание |
|---|
LogRecord(Level level,
String msg) Создайте LogRecord с заданными значениями уровня и сообщения. |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
Level |
getLevel() Получение уровня сообщения логирования, например, Level.SEVERE. |
String |
getLoggerName() Получение имени источника Logger. |
String |
getMessage() Получение «сырого» сообщения журнала до локализации или форматирования. |
long |
getMillis() Получение времени события в миллисекундах с 1970 года. |
Object[] |
getParameters() Получение параметров сообщения журнала. |
ResourceBundle |
getResourceBundle() Получение пула ресурсов для локализации |
String |
getResourceBundleName() Получение имени пула ресурсов для локализации |
long |
getSequenceNumber() Получение порядкового номера. |
String |
getSourceClassName() Получение имени класса, который (предположительно) выпустил запрос логирования. |
String |
getSourceMethodName() Получение имени метода, который (предположительно) выпустил запрос логирования. |
int |
getThreadID() Получение идентификатора потока, откуда исходило сообщение. |
Throwable |
getThrown() Получение исключения, связанного с записью журнала. |
void |
setLevel(Level level) Установка уровня сообщения логирования, например, Level.SEVERE. |
void |
setLoggerName(String name) Установка имени источника Logger. |
void |
setMessage(String message) Установка «сырого» сообщения журнала до локализации или форматирования. |
void |
setMillis(long millis) Установка времени события. |
void |
setParameters(Object[] parameters) Установка параметров сообщения журнала. |
void |
setResourceBundle(ResourceBundle bundle) Установка пула ресурсов для локализации. |
void |
setResourceBundleName(String name) Установка имени пула ресурсов для локализации. |
void |
setSequenceNumber(long seq) Установка порядкового номера. |
void |
setSourceClassName(String sourceClassName) Установка имени класса, который (предположительно) выпустил запрос логирования. |
void |
setSourceMethodName(String sourceMethodName) Установка имени метода, который (предположительно) выпустил запрос логирования. |
void |
setThreadID(int threadID) Установка идентификатора потока, откуда исходило сообщение. |
void |
setThrown(Throwable thrown) Установка исключения, связанного с событием журнала. |
Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Конструкторы
LogRecord
public LogRecord(Level level,
String msg) Создаёт LogRecord с заданными значениями уровня и сообщения.
Свойство sequence будет инициализировано новым уникальным значением. Эти значения последовательности выделяются в порядке возрастания внутри виртуальной машины.
Свойство millis будет инициализировано текущим временем.
Свойство thread ID будет инициализировано уникальным идентификатором текущей нити.
Все остальные свойства будут инициализированы значением "null".
- Параметры:
-
level- значение уровня ведения журнала -
msg- исходное сообщение журнала без локализации (может быть null)
Методы
getLoggerName
public String getLoggerName()
Получить имя источника Logger.
- Возвращает:
- имя источника логгера (может быть null)
setLoggerName
public void setLoggerName(String name)
Установить имя источника Logger.
- Параметры:
-
name- имя источника логгера (может быть null)
getResourceBundle
public ResourceBundle getResourceBundle()
Получить ресурсный пакет локализации.
Это ResourceBundle, который следует использовать для локализации строки сообщения перед её форматированием. Результатом может быть null, если сообщение не локализуется или если подходящий ResourceBundle недоступен.
- Возвращает:
- ресурсный пакет локализации
setResourceBundle
public void setResourceBundle(ResourceBundle bundle)
Установить ресурсный пакет локализации.
- Параметры:
-
bundle- пакет локализации (может быть null)
getResourceBundleName
public String getResourceBundleName()
Получить имя ресурсного пакета локализации.
Это имя ResourceBundle, которое следует использовать для локализации строки сообщения перед её форматированием. Результатом может быть null, если сообщение не локализуется.
- Возвращает:
- имя ресурсного пакета локализации
setResourceBundleName
public void setResourceBundleName(String name)
Установить имя ресурсного пакета локализации.
- Параметры:
-
name- имя пакета локализации (может быть null)
getLevel
public Level getLevel()
Получить уровень сообщения журнала, например, Level.SEVERE.
- Возвращает:
- уровень сообщения журнала
setLevel
public void setLevel(Level level)
Установить уровень сообщения журнала, например, Level.SEVERE.
- Параметры:
-
level- уровень сообщения журнала
getSequenceNumber
public long getSequenceNumber()
Получить порядковый номер.
Порядковые номера обычно назначаются в конструкторе LogRecord, который назначает уникальные порядковые номера каждому новому LogRecord в порядке возрастания.
- Возвращает:
- порядковый номер
setSequenceNumber
public void setSequenceNumber(long seq)
Установить порядковый номер.
Порядковые номера обычно назначаются в конструкторе LogRecord, поэтому обычно нет необходимости использовать этот метод.
- Параметры:
-
seq- порядковый номер
getSourceClassName
public String getSourceClassName()
Получить имя класса, который (якобы) выдал запрос ведения журнала.
Обратите внимание, что этот sourceClassName не проверяется и может быть подделан. Эта информация может быть предоставлена в ходе вызова ведения журнала или автоматически определена фреймворком ведения журнала. В последнем случае информация может быть приблизительной и фактически описывать более ранний вызов в стеке.
Может быть null, если информация недоступна.
- Возвращает:
- имя класса источника
setSourceClassName
public void setSourceClassName(String sourceClassName)
Установить имя класса, который (якобы) выдал запрос ведения журнала.
- Параметры:
-
sourceClassName- имя класса источника (может быть null)
getSourceMethodName
public String getSourceMethodName()
Получить имя метода, который (якобы) выдал запрос ведения журнала.
Обратите внимание, что этот sourceMethodName не проверяется и может быть подделан. Эта информация может быть предоставлена в ходе вызова ведения журнала или автоматически определена фреймворком ведения журнала. В последнем случае информация может быть приблизительной и фактически описывать более ранний вызов в стеке.
Может быть null, если информация недоступна.
- Возвращает:
- имя метода источника
setSourceMethodName
public void setSourceMethodName(String sourceMethodName)
Установить имя метода, который (якобы) выдал запрос ведения журнала.
- Параметры:
-
sourceMethodName- имя метода источника (может быть null)
getMessage
public String getMessage()
Получить «сырое» сообщение журнала до локализации или форматирования.
Может быть null, что эквивалентно пустой строке "".
Это сообщение может быть либо окончательным текстом, либо ключом локализации.
Во время форматирования, если у источника логгера есть ResourceBundle локализации, и если в этом ResourceBundle есть запись для этой строки сообщения, то строка сообщения заменяется локализованным значением.
- Возвращает:
- строку исходного сообщения
setMessage
public void setMessage(String message)
Установить «сырое» сообщение журнала до локализации или форматирования.
- Параметры:
-
message- строка исходного сообщения (может быть null)
getParameters
public Object[] getParameters()
Получить параметры сообщения журнала.
- Возвращает:
- параметры сообщения журнала. Может быть null, если параметров нет.
setParameters
public void setParameters(Object[] parameters)
Установить параметры сообщения журнала.
- Параметры:
-
parameters- параметры сообщения журнала. (может быть null)
getThreadID
public int getThreadID()
Получить идентификатор потока, из которого исходило сообщение.
Это идентификатор потока внутри виртуальной машины Java, и он может или не может соответствовать идентификатору операционной системы.
- Возвращает:
- идентификатор потока
setThreadID
public void setThreadID(int threadID)
Установить идентификатор потока, из которого исходило сообщение.
- Параметры:
-
threadID- идентификатор потока
getMillis
public long getMillis()
Получить время события в миллисекундах с 1970 года.
- Возвращает:
- время события в миллисекундах с 1970 года
setMillis
public void setMillis(long millis)
Установить время события.
- Параметры:
-
millis- время события в миллисекундах с 1970 года
getThrown
public Throwable getThrown()
Получить любое исключение, связанное с записью журнала.
Если событие включало исключение, это будет объект исключения. В противном случае null.
- Возвращает:
- исключение
setThrown
public void setThrown(Throwable thrown)
Установить исключение, связанное с событием журнала.
- Параметры:
-
thrown- исключение (может быть null)
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.