trait ProgressReporter extends Logging
Responsible for continually reporting statistics about the amount of data processed as well
as latency for a streaming query. This trait is designed to be mixed into the
StreamExecution, who is responsible for calling startTrigger
and finishTrigger
at the appropriate times. Additionally, the status can updated with updateStatusMessage
to
allow reporting on the streams current state (i.e. "Fetching more data").
- Alphabetic
- By Inheritance
- ProgressReporter
- Logging
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
- case class ExecutionStats(inputRows: Map[SparkDataStream, Long], stateOperators: Seq[StateOperatorProgress], eventTimeStats: Map[String, String]) extends Product with Serializable
Abstract Value Members
-
abstract
def
currentBatchId: Long
- Attributes
- protected
-
abstract
def
id: UUID
- Attributes
- protected
-
abstract
def
lastExecution: QueryExecution
- Attributes
- protected
-
abstract
def
logicalPlan: LogicalPlan
- Attributes
- protected
-
abstract
def
name: String
- Attributes
- protected
-
abstract
def
newData: Map[SparkDataStream, LogicalPlan]
- Attributes
- protected
-
abstract
def
offsetSeqMetadata: OffsetSeqMetadata
- Attributes
- protected
-
abstract
def
postEvent(event: Event): Unit
- Attributes
- protected
-
abstract
def
runId: UUID
- Attributes
- protected
-
abstract
def
sink: Table
- Attributes
- protected
-
abstract
def
sinkCommitProgress: Option[StreamWriterCommitProgress]
- Attributes
- protected
-
abstract
def
sources: Seq[SparkDataStream]
- Attributes
- protected
-
abstract
def
sparkSession: SparkSession
- Attributes
- protected
-
abstract
def
triggerClock: Clock
- Attributes
- protected
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
val
currentStatus: StreamingQueryStatus
- Attributes
- protected
- Annotations
- @volatile()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
finishTrigger(hasNewData: Boolean, hasExecuted: Boolean): Unit
Finalizes the query progress and adds it to list of recent status updates.
Finalizes the query progress and adds it to list of recent status updates.
- hasNewData
Whether the sources of this stream had new data for this trigger.
- hasExecuted
Whether any batch was executed during this trigger. Streaming queries that perform stateful aggregations with timeouts can still run batches even though the sources don't have any new data.
- Attributes
- protected
-
def
formatTimestamp(millis: Long): String
- Attributes
- protected
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
initializeLogIfNecessary(isInterpreter: Boolean, silent: Boolean): Boolean
- Attributes
- protected
- Definition Classes
- Logging
-
def
initializeLogIfNecessary(isInterpreter: Boolean): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isTraceEnabled(): Boolean
- Attributes
- protected
- Definition Classes
- Logging
-
def
lastProgress: StreamingQueryProgress
Returns the most recent query progress update or null if there were no progress updates.
-
def
log: Logger
- Attributes
- protected
- Definition Classes
- Logging
-
def
logDebug(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logDebug(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logError(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logError(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logInfo(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logInfo(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logName: String
- Attributes
- protected
- Definition Classes
- Logging
-
def
logTrace(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logTrace(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logWarning(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logWarning(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
recentProgress: Array[StreamingQueryProgress]
Returns an array containing the most recent query progress updates.
-
def
recordTriggerOffsets(from: StreamProgress, to: StreamProgress): Unit
Record the offsets range this trigger will process.
Record the offsets range this trigger will process. Call this before updating
committedOffsets
inStreamExecution
to make sure that the correct range is recorded.- Attributes
- protected
-
def
reportTimeTaken[T](triggerDetailKey: String)(body: ⇒ T): T
Records the duration of running
body
for the next query progress update.Records the duration of running
body
for the next query progress update.- Attributes
- protected
-
def
startTrigger(): Unit
Begins recording statistics about query progress for a given trigger.
Begins recording statistics about query progress for a given trigger.
- Attributes
- protected
-
def
status: StreamingQueryStatus
Returns the current status of the query.
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
def
updateStatusMessage(message: String): Unit
Updates the message returned in
status
.Updates the message returned in
status
.- Attributes
- protected
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()