GradleBuildCachePerformanceTaskExecutionEntry

data class GradleBuildCachePerformanceTaskExecutionEntry(@Json(name = "taskPath") val taskPath: String, @Json(name = "taskType") val taskType: String, @Json(name = "avoidanceOutcome") val avoidanceOutcome: GradleBuildCachePerformanceTaskExecutionEntry.AvoidanceOutcome, @Json(name = "duration") val duration: Long, @Json(name = "fingerprintingDuration") val fingerprintingDuration: Long? = null, @Json(name = "avoidanceSavings") val avoidanceSavings: Long? = null, @Json(name = "nonCacheabilityCategory") val nonCacheabilityCategory: GradleBuildCachePerformanceTaskExecutionEntry.NonCacheabilityCategory? = null, @Json(name = "nonCacheabilityReason") val nonCacheabilityReason: String? = null, @Json(name = "skipReasonMessage") val skipReasonMessage: String? = null, @Json(name = "cacheArtifactSize") val cacheArtifactSize: Long? = null, @Json(name = "cacheArtifactRejectedReason") val cacheArtifactRejectedReason: GradleBuildCachePerformanceTaskExecutionEntry.CacheArtifactRejectedReason? = null, @Json(name = "cacheKey") val cacheKey: String? = null)

Parameters

taskPath

The full task path.

taskType

The fully qualified class name of the task.

avoidanceOutcome

The avoidance outcome of this task with respect to performance: * avoided_up_to_date - Task whose execution is avoided due to build incrementalism * avoided_from_local_cache - Task whose execution is avoided due to reusing a local build cache entry * avoided_from_remote_cache - Task whose execution is avoided due to reusing a remote build cache entry * executed_cacheable - Task which is executed but is cacheable * executed_not_cacheable - Task which is executed but is not cacheable * executed_unknown_cacheability - Task which is executed and whose cacheability can not be determined * avoided_unknown_reason - Task which was avoided for an unknown reason * lifecycle - Lifecycle task * no-source - No-source task * skipped - Skipped task

duration

The task duration in milliseconds.

fingerprintingDuration

The task fingerprinting duration in milliseconds. This duration is part of the complete task execution duration. null if the task is not fingerprinted, or the information is not available.

avoidanceSavings

The task avoidance savings in milliseconds, which can be negative. Negative values indicate that it takes more time to reuse outputs than it did to create them originally. null if the information is not available.

nonCacheabilityCategory

The category of the non-cacheability reason: * build_cache_not_enabled - Caching is not enabled for the build * cache-if_condition_not_matched - Caching is disabled for the task via org.gradle.api.tasks.TaskOutputs#cacheIf * disabled_to_ensure_correctness - The task failed validation. Available since Gradle 7.0 * do-not-cache-if_condition_matched - Caching is disabled for the task via org.gradle.api.tasks.TaskOutputs#doNotCacheIf * multiple_outputs_declared - The task declares multiple outputs * no_outputs_declared - The task has no outputs declared * non_cacheable_inputs - One of the task inputs is not cacheable, either because some type used as an input to the task is loaded via a custom classloader, or a Java lambda is used as an input. Available since Gradle 5.0 and before Gradle 7.5 * non_cacheable_task_action - One of the task actions is not cacheable, either because it is loaded via a custom classloader, or a Java lambda is used to implement it. Available since Gradle 5.0 and before Gradle 7.5 * non_cacheable_task_implementation - The task implementation is not cacheable, either because it is loaded via a custom classloader, or a Java lambda is used to implement it. Available since Gradle 5.0 and before Gradle 7.5 * non_cacheable_tree_output - The task has a org.gradle.api.file.FileTree or a org.gradle.api.internal.file.collections.DirectoryFileTree as an output. Available since Gradle 5.0 * overlapping_outputs - The tasks outputs overlaps with another task. As Gradle cannot safely determine which task each output file belongs to, it disables caching * task_has_no_actions - The task does not declare any actions * task_output_caching_not_enabled - Caching is not enabled for the task * unknown - Reason for disabled caching is not known null when the task is cacheable or if the information is not available.

nonCacheabilityReason

The human-readable reason for a non-cacheable task. null when the task is cacheable or if the information is not available.

skipReasonMessage

The detailed reason why the task is skipped. null if the task is not skipped or Gradle versions <7.6 are used.

cacheArtifactSize

The number of bytes of the produced or consumed cache artifact. For a task execution where the outputs are successfully stored to a local or remote cache, this is the size of the stored cache artifact. For a task execution where the outputs are successfully loaded from a local or remote cache, this is the size of the loaded cache artifact. null if the task is not cacheable, or if the attempt to store or load the artifact from cache does not succeed.

cacheArtifactRejectedReason

The reason why the cache artifact is rejected: * artifact_size_too_large - The size of the artifact is larger than the remote build cache can accept. The value is null if the task is not cacheable, or if the attempt to store the artifact does not succeed.

cacheKey

The build cache key. null if no build cache key was computed (e.g. when the task is skipped).

Constructors

constructor(@Json(name = "taskPath") taskPath: String, @Json(name = "taskType") taskType: String, @Json(name = "avoidanceOutcome") avoidanceOutcome: GradleBuildCachePerformanceTaskExecutionEntry.AvoidanceOutcome, @Json(name = "duration") duration: Long, @Json(name = "fingerprintingDuration") fingerprintingDuration: Long? = null, @Json(name = "avoidanceSavings") avoidanceSavings: Long? = null, @Json(name = "nonCacheabilityCategory") nonCacheabilityCategory: GradleBuildCachePerformanceTaskExecutionEntry.NonCacheabilityCategory? = null, @Json(name = "nonCacheabilityReason") nonCacheabilityReason: String? = null, @Json(name = "skipReasonMessage") skipReasonMessage: String? = null, @Json(name = "cacheArtifactSize") cacheArtifactSize: Long? = null, @Json(name = "cacheArtifactRejectedReason") cacheArtifactRejectedReason: GradleBuildCachePerformanceTaskExecutionEntry.CacheArtifactRejectedReason? = null, @Json(name = "cacheKey") cacheKey: String? = null)

Types

Link copied to clipboard

The avoidance outcome of this task with respect to performance: * avoided_up_to_date - Task whose execution is avoided due to build incrementalism * avoided_from_local_cache - Task whose execution is avoided due to reusing a local build cache entry * avoided_from_remote_cache - Task whose execution is avoided due to reusing a remote build cache entry * executed_cacheable - Task which is executed but is cacheable * executed_not_cacheable - Task which is executed but is not cacheable * executed_unknown_cacheability - Task which is executed and whose cacheability can not be determined * avoided_unknown_reason - Task which was avoided for an unknown reason * lifecycle - Lifecycle task * no-source - No-source task * skipped - Skipped task

Link copied to clipboard

The reason why the cache artifact is rejected: * artifact_size_too_large - The size of the artifact is larger than the remote build cache can accept. The value is null if the task is not cacheable, or if the attempt to store the artifact does not succeed.

Link copied to clipboard

The category of the non-cacheability reason: * build_cache_not_enabled - Caching is not enabled for the build * cache-if_condition_not_matched - Caching is disabled for the task via org.gradle.api.tasks.TaskOutputs#cacheIf * disabled_to_ensure_correctness - The task failed validation. Available since Gradle 7.0 * do-not-cache-if_condition_matched - Caching is disabled for the task via org.gradle.api.tasks.TaskOutputs#doNotCacheIf * multiple_outputs_declared - The task declares multiple outputs * no_outputs_declared - The task has no outputs declared * non_cacheable_inputs - One of the task inputs is not cacheable, either because some type used as an input to the task is loaded via a custom classloader, or a Java lambda is used as an input. Available since Gradle 5.0 and before Gradle 7.5 * non_cacheable_task_action - One of the task actions is not cacheable, either because it is loaded via a custom classloader, or a Java lambda is used to implement it. Available since Gradle 5.0 and before Gradle 7.5 * non_cacheable_task_implementation - The task implementation is not cacheable, either because it is loaded via a custom classloader, or a Java lambda is used to implement it. Available since Gradle 5.0 and before Gradle 7.5 * non_cacheable_tree_output - The task has a org.gradle.api.file.FileTree or a org.gradle.api.internal.file.collections.DirectoryFileTree as an output. Available since Gradle 5.0 * overlapping_outputs - The tasks outputs overlaps with another task. As Gradle cannot safely determine which task each output file belongs to, it disables caching * task_has_no_actions - The task does not declare any actions * task_output_caching_not_enabled - Caching is not enabled for the task * unknown - Reason for disabled caching is not known null when the task is cacheable or if the information is not available.

Properties

Link copied to clipboard
val avoidanceSavings: Long? = null
Link copied to clipboard
val cacheArtifactSize: Long? = null
Link copied to clipboard
val cacheKey: String? = null
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard