1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
|
Global.ExtendedProperty.AuthoritativeServers=${ChangeMe_csm.acfshost}:${ChangeMe_csm.acfsport}
#Possible working server for troubleshooting csm related items (used when testing/using invokeService or invokeAdapter components)
#Global.ExtendedProperty.AuthoritativeServers=q399csi1a1.vci.att.com:27550
#
# The settings in this file control the behavior of the CSM Framework.
# The majority of the settings in this file adhere to the following
# pattern:
#
# [EntityType].[EntityId].[PropertyName]=[PropertyValue]
#
# Where:
#
# [EntityType] Identifies the type of entity (service or
# service group) that's being configured.
# [EntityId] Identifies the individual entity.
# [PropertyName] Identifies the property that is being set.
# [PropertyValue] Is the actual property value.
#
# In the formatting sample above, the EntityType can be setto one of the
# following values:
#
# * 'Service' if an individual service is being configured.
# * 'Group 'if a service group is being configured.
#
# The reference to 'entity' in the above description is intentionally
# generic. The CSM Framework supports the configuration of individual
# services as well as groups of services. The type of entity that is
# actually being configured is determined by the value of the
# [EntityType] portion of the property.
#
# There are two values for [EntityId] that have a special meaning within
# the CSM Framework:
#
#
# DefaultService - Identifies the default configuration for any service
# that is not explicitly configured elsewhere in this file.
#
# DefaultServiceGroup - This identifies the entity that provides the
# default configuration for any service group that is not explicitly
# configured elsewhere in this file.
#
# DO NOT use either of these as the identifier for any of your
# application-specific services or service groups.
#
# The CSM Framework treats all entity identifiers in a case-insensitive
# manner. The entity ids 'Service1' and 'SERVICE1' are equivalant. All
# properties with the same [EntityId] will be applied to the same
# configuration. The CSM Framework framework also treats property names
# in a case-insensitive manner. 'MaxRequestCount' and 'MAXREQUESTCOUNT'
# are considered equivalent within the CSM framework.
#
# The following properties are supported by the CSM Framework. Any
# properties that are entity-specific will include the '[EntityId].'
# prefix.
#
# [EntityType].[EntityId].Enabled - Indicates if the entity is enabled
# or disabled by default. The value of this property must be either
# 'true' or 'false'.
#
# [EntityType].[EntityId].MaxRequestCount - The maximum number of
# requests that can be running at any point in time. Once this limit is
# reached, the service is considered to be 'flooded', and subsequent
# requests are refused until the request count drops to the level
# specified by the RestartThreshold property. Once the restart
# threshold is reached, the service will be 'restarted' based on the
# values of the 'RestartFrequency' and 'RestartIncrement' properties.
# The value of this property must be a numeric value.
# The default value for this property is 20.
#
# [EntityType].[EntityId].MaxStalledRequestCount - the maximum number of
# 'stalled' requests that are allowed before subsequent requests are
# refused
# The value of this property must be a numeric value.
# The default value for this property is 10.
#
# [EntityType].[EntityId].RestartThreshold - the process count level at
# which requests will be allowed to proceed whenever a service becomes
# 'flooded'. This property is only used if the total process count
# reaches the level set by the 'MaxRequestCount' property. Once that
# occurs, subsequent requests will be refused until the active request
# count drops to the level specified by this property. Once the active
# request count drops to the level specified by this property, the
# service will be 'restarted' based on the values of the
# 'RestartFrequency' and 'RestartIncrement' properties. To cause the
# CSM framework to allow subsequent requests to proceed as soon as the
# active request count drops below level level set by the
# 'MaxRequestCount' property, just set this property to either -1 or 1
# less than the value of the 'MaxRequestCount' property.
# The value of this property must be a numeric value.
# The default value for this property is -1.
#
# [EntityType].[EntityId].RestartIncrement - This property, along with
# the 'RestartFrequency' property helps determine how quickly the active
# request count will rise to the 'maximum request count' whenever a
# service is 'restarted' after becoming 'flooded'. The
# 'RestartFrequency' property determines how frequenty the permissable
# number of active requests will be increased. This property determines
# how much the permissible number of active requests will increase by
# whenever it is raised. If this property is set to a positive value,
# then the 'RestartFrequency' property must also be set to a positive
# value. If this property is set to 0, then the 'RestartFrequency'
# property must also be set to 0. In other words, either both
# properties are 0 or both properties are greater than 0. When both
# properties are set to 0, then the permissable number of active
# requests immediately rises back up to the maximum request count once
# it has droppedback down to the 'restart threshold'. When both
# properties are greater than 0, then the permissable number of active
# requests gradually rises to the maximum request count.
# The value of this property must be a numeric value greater than or equal to 0.
# The default value for this property is 0.
#
# [EntityType].[EntityId].RestartFrequency - This property, along with
# the 'RestartIncrement' property helps determine how quickly the active
# request count will rise to the 'maximum request count' whenever a
# service is 'restarted' after becoming 'flooded'. The
# 'RestartIncrement' property determines how quickly the permissable
# number of active requests will be increased. This property determines
# how frequently that increase will occur. If this property is set to
# a positive value, then the 'RestartIncrement' property must also be
# set to a positive value. If this property is set to 0, then the
# 'RestartIncrement' property must also be set to 0. In other words,
# either both properties are 0 or both properties are greater than 0.
# When both properties are set to 0, then the permissable number of
# active requests immediately rises back up to the maximum request count
# once it has droppedback down to the 'restart threshold'. When both
# properties are greater than 0, then the permissable number of active
# requests gradually rises to the maximum request count.
# The value of this property must be a numeric value greater than or equal to 0.
# The default value for this property is 0.
#
# [EntityType].[EntityId].ServiceGroupId - This property is only
# relevant for entities that are configured as services (i.e. the
# [EntityType] portion of the property is set to 'Service'). When the
# 'ServiceGroupId' property is set to a non-blank value, the behavior of
# the service is controled by the configuration of the corresponding
# service group. There is no default value for this property.
#
# [EntityType].[EntityId].Timeout - the timeout, in milliseconds, for
# each process that is controlled by this configuration. Once the
# duration of a process exceeds this value, the process will be
# considered to have entered a 'stalled' state. The default value for
# this property is 10000.
#
# FrameworkEnabled: - This is the one property that is not specific to a
# single entity. This property determines whether the entire CSM
# Framework is enabled or disabled. When disabled, the CSM Framework
# does not track any process counts. All requests to access a service
# are allowed, regardless of the current level of activity. The value
# of this property must be either 'true' or 'false'.
#
#
# Enables the CSM Framework so that it can manage interactions with external
# services and/or resources. To disable the CSM Framework, simply set
# this property to false.
#
FrameworkEnabled=true
#
# These are the default settings for any service that is no explicitly configured
# below. A few things to note about this configuration:
# 1) The "Enabled" property is not explicitly set. Instead, we are relying
# on the default value of 'true'.
# 2) The Timeout and Type properties are also not explicitly set. Again, we
# are relying on the default values for these properties.
#
Service.DefaultService.Enabled=true
Service.DefaultService.MaxRequestCount=30
Service.DefaultService.MaxStalledRequestCount=20
Service.DefaultService.Timeout=30000
Service.DefaultService.RestartThreshold=-1
Service.DefaultService.AutoPurgeAfter=150000
#
# These are the default settings for any service group that is referenced in
# a service configuration but not configured below.
#
# Currently CSI does not use any service group configurations!
#
#Group.DefaultGroup.MaxRequestCount=-1
#Group.DefaultGroup.MaxStalledRequestCount=-1
#Group.DefaultGroup.RestartThreshold=-1
#Group.DefaultGroup.Timeout=-1
|