CoreSpan¶
- public interface CoreSpan extends CoreImplicitContextKeyed¶
Added in version AS: 1.23.0-ms5
Интерфейс декларирует диапазон. У него есть связанный
CoreSpanContext.Диапазон создаются методом
CoreTracer.startSpan(String, Map, Map, Map).CoreSpanдолжен завершаться вызовомend().See also
Methods¶
addEvent¶
addEvent¶
addEvent¶
- void addEvent(String name, Map<Object, Object> attributes, long timestampNanos)¶
Добавляет событие в
CoreSpanс заданными атрибутами иtimestamp. Обратите внимание: этаtimestampне совпадает сSystem.nanoTime(), но может быть вычислен. используя его, например, взяв разницу показаний отSystem.nanoTime()и добавление времени начала интервала.Когда это возможно, предпочтительно использовать
addEvent(String)во время, когда событие произошло.- Parameters:
name – название события.
attributes – атрибуты, которые будут добавлены; они связаны с этим событием, а не
Spanкак дляsetAttribute().timestampNanos – явная временная метка события, начиная с эпохи.
end¶
- void end()¶
Отмечает конец выполнения
CoreSpan.Будет записано только время первого завершения вызова для данного
CoreSpan, последующие вызовы будут проигнорированы.
end¶
- void end(long timestampNanos)¶
Отмечает конец выполнения
CoreSpan.Будет записано только время первого завершения вызова для данного
CoreSpan, последующие вызовы будут проигнорированы.- Parameters:
timestampNanos – явная временная метка эпохи для этого
CoreSpan.0указывает на то, что следует использовать текущее время.
getSpanContext¶
- CoreSpanContext getSpanContext()¶
Возвращает
CoreSpanContext, связанный с этимCoreSpan.- Returns:
Контекст диапазона.
isRecording¶
- boolean isRecording()¶
Возвращает
true, если этотCoreSpanзаписывает события трассировки (например,addEvent(String),setAttribute(Object, Object)).- Returns:
true, если этотCoreSpanзаписывает события трассировки.
recordException¶
- void recordException(Throwable throwable)¶
Записывает информацию о
ThrowableвCoreSpan.Обратите внимание, что значение EXCEPTION_ESCAPED из семантических соглашений не может быть определено этой функцией. Вам следует записать этот атрибут вручную, используя
recordException(Throwable, Map), если вы знаете, что исключение экранируется.- Parameters:
throwable –
Throwableдля записи.
recordException¶
setAllAttributes¶
- void setAllAttributes(Map<Object, Object> attributes)¶
Устанавливает атрибуты для
CoreSpan. ЕслиCoreSpanранее содержал сопоставление для любого ключей, старые значения заменяются указанными значениями.- Parameters:
attributes – карта атрибутов, где: - ключом является не пустая строка или экземпляр созданный методом
CoreAttributeKeyProvider.newAttributeKey(String, String). - значением является объект одного из типов: Long, Double, String, Boolean, Long[], Double[], String[], Boolean[].
setAttribute¶
- void setAttribute(Object key, Object value)¶
Устанавливает атрибут этого
CoreSpan. ЕслиCoreSpanранее содержал сопоставление для ключа, старое значение заменяется указанным значением.- Parameters:
key – имя атрибута, не может быть пустой строкой или NULL, или экземпляр созданный методом
CoreAttributeKeyProvider.newAttributeKey(String, String)value – значение атрибута одного из типов: Long, Double, String, Boolean, Long[], Double[], String[], Boolean[].
setStatus¶
- void setStatus(String statusCode, String description)¶
Устанавливает статус диапазона.
Если используется, это переопределит статус
CoreSpanпо умолчанию. Код статуса по умолчанию:CoreSpan.StatusCode.UNSET.Будет записано только значение последнего вызова.
- Parameters:
statusCode – код состояния
CoreSpan.StatusCodedescription – описание состояния.