Skip to content

Commit

Permalink
Merge remote-tracking branch 'refs/remotes/origin/master'
Browse files Browse the repository at this point in the history
  • Loading branch information
skublik committed Aug 27, 2021
2 parents 8c3d8df + 6ced04d commit 83b6fac
Show file tree
Hide file tree
Showing 11 changed files with 375 additions and 242 deletions.
194 changes: 161 additions & 33 deletions infra/schema/src/main/resources/xml/ns/public/common/common-tasks-3.xsd
Original file line number Diff line number Diff line change
Expand Up @@ -1847,10 +1847,11 @@
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="reporting" type="tns:TaskReportingOptionsType" minOccurs="0">
<xsd:element name="reporting" type="tns:ActivityReportingDefinitionType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
How the activity is monitored, e.g. using tracing or dynamic profiling.
How various aspects of activity execution are reported, using logging, tracing,
profiling, reporting, and so on.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
Expand Down Expand Up @@ -2047,23 +2048,6 @@
</xsd:appinfo>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="tracing" type="tns:ProcessTracingConfigurationType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Specifies when and how should be the activity execution traced. Contains tracing interval
(i.e. how often a trace should be recorded), tracing profile to be used and tracing points
(roots) where the tracing should be done.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="profiling" type="tns:ProcessProfilingConfigurationType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Specifies when and how should be the activity execution dynamically profiled.
This functionality is deprecated. The tracing should be used instead.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="id" type="xsd:long"/>
</xsd:complexType>
Expand Down Expand Up @@ -2211,10 +2195,10 @@
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="monitoring" type="tns:ActivityMonitoringDefinitionType" minOccurs="0">
<xsd:element name="reporting" type="tns:ActivityReportingDefinitionType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
How the activity is monitored, e.g. using tracing or dynamic profiling.
How the activity is reported (logging, tracing, profiling, reporting, etc).
</xsd:documentation>
</xsd:annotation>
</xsd:element>
Expand Down Expand Up @@ -2813,6 +2797,13 @@
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="reports" type="tns:ActivityReportsType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Reports related to activity execution.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="workState" type="tns:AbstractActivityWorkStateType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Expand Down Expand Up @@ -5615,7 +5606,7 @@
</xsd:complexType>
<xsd:element name="qualifiedItemProcessingOutcome" type="tns:QualifiedItemProcessingOutcomeType" />

<xsd:complexType name="TaskReportingOptionsType">
<xsd:complexType name="ActivityReportingDefinitionType">
<xsd:annotation>
<xsd:documentation>
How should the task report its various aspects?
Expand All @@ -5629,30 +5620,130 @@
</xsd:appinfo>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="logging" type="tns:TaskLoggingOptionsType" minOccurs="0">
<xsd:element name="logging" type="tns:ActivityLoggingOptionsType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Controls logging aspects of an activity execution.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="tracing" type="tns:ProcessTracingConfigurationType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Specifies when and how should be the activity execution traced. Contains tracing interval
(i.e. how often a trace should be recorded), tracing profile to be used and tracing points
(roots) where the tracing should be done.
</xsd:documentation>
<xsd:appinfo>
<a:since>4.4</a:since>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="profiling" type="tns:ProcessProfilingConfigurationType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
How should individual actions be logged?
Specifies when and how should be the activity execution dynamically profiled.
This functionality is deprecated. The tracing should be used instead.
</xsd:documentation>
<xsd:appinfo>
<a:since>4.4</a:since>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="executionReports" type="tns:ActivityExecutionReportsConfigurationType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Configures specific activity execution reports: on buckets, items, and so on.
</xsd:documentation>
<xsd:appinfo>
<a:since>4.4</a:since>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="determineExpectedTotal" type="xsd:boolean" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Should the task instance try to determine expected total (usually by counting objects before processing)?
Not applicable to bucketed tasks.
Should the activity execution try to determine expected total (usually by counting
objects before processing)? Currently not applicable to bucketed activities.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="id" type="xsd:long"/>
</xsd:complexType>
<xsd:element name="taskReportingOptions" type="tns:TaskReportingOptionsType" />
<xsd:element name="activityReportingDefinition" type="tns:ActivityReportingDefinitionType" />

<xsd:complexType name="TaskLoggingOptionsType">
<xsd:complexType name="ActivityExecutionReportsConfigurationType">
<xsd:annotation>
<xsd:documentation>
Configures task logging aspects.
Defines specific activity execution reports.
</xsd:documentation>
<xsd:appinfo>
<a:experimentaL>true</a:experimentaL>
<a:container>true</a:container>
<a:since>4.4</a:since>
</xsd:appinfo>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="buckets" type="tns:BucketsExecutionReportConfigurationType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Controls logging aspects of an activity execution.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="items" type="tns:ItemsExecutionReportConfigurationType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Specifies when and how should be the activity execution traced. Contains tracing interval
(i.e. how often a trace should be recorded), tracing profile to be used and tracing points
(roots) where the tracing should be done.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="id" type="xsd:long"/>
</xsd:complexType>
<xsd:element name="activityExecutionReportsConfiguration" type="tns:ActivityExecutionReportsConfigurationType" />

<xsd:complexType name="BucketsExecutionReportConfigurationType">
<xsd:annotation>
<xsd:documentation>
Defines report on buckets processing.
</xsd:documentation>
<xsd:appinfo>
<a:experimentaL>true</a:experimentaL>
<a:container>true</a:container>
<a:since>4.4</a:since>
</xsd:appinfo>
</xsd:annotation>
<xsd:sequence>
</xsd:sequence>
<xsd:attribute name="id" type="xsd:long"/>
</xsd:complexType>
<xsd:element name="bucketsExecutionReportConfiguration" type="tns:BucketsExecutionReportConfigurationType" />

<xsd:complexType name="ItemsExecutionReportConfigurationType">
<xsd:annotation>
<xsd:documentation>
Defines report on items processing.
</xsd:documentation>
<xsd:appinfo>
<a:experimentaL>true</a:experimentaL>
<a:container>true</a:container>
<a:since>4.4</a:since>
</xsd:appinfo>
</xsd:annotation>
<xsd:sequence>
</xsd:sequence>
<xsd:attribute name="id" type="xsd:long"/>
</xsd:complexType>
<xsd:element name="itemsExecutionReportConfiguration" type="tns:ItemsExecutionReportConfigurationType" />

<xsd:complexType name="ActivityLoggingOptionsType">
<xsd:annotation>
<xsd:documentation>
Controls logging aspects of an activity execution.
</xsd:documentation>
<xsd:appinfo>
<a:experimentaL>true</a:experimentaL>
Expand All @@ -5661,26 +5752,27 @@
</xsd:appinfo>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="itemCompletion" type="tns:TaskLoggingOptionType" minOccurs="0">
<xsd:element name="itemCompletion" type="tns:ActivityEventLoggingOptionType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
How should item completion be logged?
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="bucketCompletion" type="tns:TaskLoggingOptionType" minOccurs="0">
<xsd:element name="bucketCompletion" type="tns:ActivityEventLoggingOptionType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
How should bucket completion be logged?
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<!-- TODO logging override for an activity -->
</xsd:sequence>
<xsd:attribute name="id" type="xsd:long"/>
</xsd:complexType>
<xsd:element name="taskLoggingOptions" type="tns:TaskLoggingOptionsType" />
<xsd:element name="activityLoggingOptions" type="tns:ActivityLoggingOptionsType" />

<xsd:simpleType name="TaskLoggingOptionType">
<xsd:simpleType name="ActivityEventLoggingOptionType">
<xsd:annotation>
<xsd:documentation>
Option about logging a particular task-related event.
Expand Down Expand Up @@ -7401,4 +7493,40 @@
</xsd:enumeration>
</xsd:restriction>
</xsd:simpleType>

<xsd:complexType name="ActivityReportsType">
<xsd:annotation>
<xsd:documentation>
Reports related to activity execution.
</xsd:documentation>
<xsd:appinfo>
<a:container>true</a:container>
<a:since>4.4</a:since>
<a:experimental>true</a:experimental>
</xsd:appinfo>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="buckets" type="tns:ObjectReferenceType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Report on the level of buckets.
</xsd:documentation>
<xsd:appinfo>
<a:objectReferenceTargetType>tns:ReportDataType</a:objectReferenceTargetType>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="items" type="tns:ObjectReferenceType" minOccurs="0">
<xsd:annotation>
<xsd:documentation>
Report on the level of items.
</xsd:documentation>
<xsd:appinfo>
<a:objectReferenceTargetType>tns:ReportDataType</a:objectReferenceTargetType>
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="id" type="xsd:long"/>
</xsd:complexType>
</xsd:schema>
Original file line number Diff line number Diff line change
Expand Up @@ -692,7 +692,7 @@
</xsd:annotation>
</xsd:element>

<xsd:element name="reporting" type="c:TaskReportingOptionsType">
<xsd:element name="reporting" type="c:ActivityReportingDefinitionType">
<xsd:annotation>
<xsd:documentation>
How should the task report its various aspects?
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
import com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ScanWorkStateType;

import com.evolveum.midpoint.xml.ns._public.common.common_3.TaskLoggingOptionType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ActivityEventLoggingOptionType;

import org.jetbrains.annotations.NotNull;

Expand All @@ -50,7 +50,7 @@ public ScanActivityExecutionSpecifics(@NotNull SearchBasedActivityExecution<O, W
return super.getDefaultReportingOptions()
.persistentStatistics(true)
.defaultDetermineExpectedTotal(false) // To avoid problems like in MID-6934.
.defaultBucketCompletionLogging(TaskLoggingOptionType.NONE); // To avoid log noise.
.defaultBucketCompletionLogging(ActivityEventLoggingOptionType.NONE); // To avoid log noise.
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
<controlFlow>
<processingOption>process</processingOption>
</controlFlow>
<!--<monitoring>-->
<!--<reporting>-->
<!-- <tracing>-->
<!-- <interval>1</interval>-->
<!-- <tracingProfile>-->
Expand All @@ -54,7 +54,7 @@
<!-- </tracingTypeProfile>-->
<!-- </tracingProfile>-->
<!-- </tracing>-->
<!--</monitoring>-->
<!--</reporting>-->
</change>
<change>
<reference>resourceObjects</reference>
Expand Down

0 comments on commit 83b6fac

Please sign in to comment.