Edit

Share via


IManagementGrain Interface

Definition

Interface for system management functions of silos, exposed as a grain for receiving remote requests / commands.

public interface IManagementGrain : Orleans.IGrainWithIntegerKey, Orleans.IVersionManager
type IManagementGrain = interface
    interface IGrainWithIntegerKey
    interface IGrain
    interface IAddressable
    interface IVersionManager
Public Interface IManagementGrain
Implements IGrainWithIntegerKey, IVersionManager
Implements

Methods

FindLaggingSilos()

Contact all silos in all clusters and return silos that do not have the latest multi-cluster configuration. If some clusters and/or silos cannot be reached, an exception is thrown.

ForceActivationCollection(SiloAddress[], TimeSpan)

Perform a run of the Orleans activation collector in the specified silos.

ForceActivationCollection(TimeSpan)

Forces activation collection.

ForceGarbageCollection(SiloAddress[])

Perform a run of the .NET garbage collector in the specified silos.

ForceRuntimeStatisticsCollection(SiloAddress[])

Perform a run of the silo statistics collector in the specified silos.

GetActivationAddress(IAddressable)

Return the SiloAddress where a given Grain is activated (if any).

GetActiveGrains(GrainType)

Returns all activations of the specified grain type.

GetActiveGrainTypes(SiloAddress[])

Returns an array of all the active grain types in the system

GetDetailedGrainStatistics(String[], SiloAddress[])

Returns the most recent detailed grain statistics information, amalgamated across silos for the specified types.

GetDetailedHosts(Boolean)

Get the list of silo hosts and membership information currently known about in this cluster.

GetGrainActivationCount(GrainReference)

Gets the grain activation count for a specific grain type.

GetGrainCallFrequencies(SiloAddress[])

Gets estimated grain call frequency statistics from the specified hosts.

GetHosts(Boolean)

Get the list of silo hosts and statuses currently known about in this cluster.

GetMultiClusterConfiguration()

Get the current multicluster configuration.

GetMultiClusterGateways()

Get the current list of multicluster gateways.

GetRuntimeStatistics(SiloAddress[])

Return the most recent silo runtime statistics information for the specified silos.

GetSimpleGrainStatistics()

Return the most recent grain statistics information, amalgamated across all silos.

GetSimpleGrainStatistics(SiloAddress[])

Return the most recent grain statistics information, amalgamated across silos.

GetTotalActivationCount()

Return the total count of all current grain activations across all silos.

InjectMultiClusterConfiguration(IEnumerable<String>, String, Boolean)

Configure the active multi-cluster, by injecting a multicluster configuration.

ResetGrainCallFrequencies(SiloAddress[])

For testing only. Resets grain call frequency counts on the specified hosts.

SendControlCommandToProvider(String, String, Int32, Object)

Execute a control command on the specified providers on all silos in the cluster. Commands are sent to all known providers on each silo which match both the providerTypeFullName AND providerName parameters.

SendControlCommandToProvider<T>(String, Int32, Object)

Execute a control command on the specified providers on all silos in the cluster. Commands are sent to all known providers on each silo which match both the providerTypeFullName AND providerName parameters.

SetAppLogLevel(SiloAddress[], Int32)

Set the current log level for application grains.

SetCompatibilityStrategy(CompatibilityStrategy)

Set the compatibility strategy.

(Inherited from IVersionManager)
SetCompatibilityStrategy(GrainInterfaceType, CompatibilityStrategy)

Set the compatibility strategy for a specific interface.

(Inherited from IVersionManager)
SetCompatibilityStrategy(Int32, CompatibilityStrategy)

Set the compatibility strategy for a specific interface

(Inherited from IVersionManager)
SetLogLevel(SiloAddress[], String, Int32)

Set the current log level for a particular Logger, by name (with prefix matching).

SetSelectorStrategy(GrainInterfaceType, VersionSelectorStrategy)

Set the selector strategy for a specific interface.

(Inherited from IVersionManager)
SetSelectorStrategy(Int32, VersionSelectorStrategy)

Set the selector strategy for a specific interface

(Inherited from IVersionManager)
SetSelectorStrategy(VersionSelectorStrategy)

Set the selector strategy.

(Inherited from IVersionManager)
SetSystemLogLevel(SiloAddress[], Int32)

Set the current log level for system runtime components.

UpdateConfiguration(SiloAddress[], Dictionary<String,String>, Dictionary<String,String>)

Update the configuration information dynamically. Only a subset of configuration information can be updated - will throw an error (and make no config changes) if you specify attributes or elements that cannot be changed. The configuration format is XML, in the same format as the OrleansConfiguration.xml file. The allowed elements and attributes are:

<OrleansConfiguration>
    <Globals>
        <Messaging ResponseTimeout="?"/>
        <Caching CacheSize="?"/>
        <Activation CollectionInterval="?" CollectionAmount="?" CollectionTotalMemoryLimit="?" CollectionActivationLimit="?"/>
        <Liveness ProbeTimeout="?" TableRefreshTimeout="?" NumMissedProbesLimit="?"/>
    </Globals>
    <Defaults>
        <LoadShedding Enabled="?" LoadLimit="?"/>
        <Tracing DefaultTraceLevel="?" PropagateActivityId="?">
            <TraceLevelOverride LogPrefix="?" TraceLevel="?"/>
        </Tracing>
    </Defaults>
</OrleansConfiguration>
UpdateStreamProviders(SiloAddress[], IDictionary<String,ProviderCategoryConfiguration>)

Update the stream providers dynamically. The stream providers in the listed silos will be updated based on the differences between its loaded stream providers and the list of providers in the streamProviderConfigurations: If a provider in the configuration object already exists in the silo, it will be kept as is; if a provider in the configuration object does not exist in the silo, it will be loaded and started; if a provider that exists in silo but is not in the configuration object, it will be stopped and removed from the silo.

Extension Methods

AsReference(IAddressable, Type)

Returns a typed reference to the provided grain.

AsReference<TGrainInterface>(IAddressable)

Returns a typed reference to the provided grain.

BindGrainReference(IAddressable, IGrainFactory)

Binds the grain reference to the provided IGrainFactory.

Cast(IAddressable, Type)

Returns a typed reference to the provided grain.

Cast<TGrainInterface>(IAddressable)

Returns a typed reference to the provided grain.

GetGrainId(IAddressable)

Returns the grain id corresponding to the provided grain.

GetGrainIdentity(IGrain)
GetPrimaryKey(IGrain)
GetPrimaryKey(IGrain, String)
GetPrimaryKey(IAddressable)

Returns the Guid representation of a grain primary key.

GetPrimaryKey(IAddressable, String)

Returns the Guid representation of a grain primary key.

GetPrimaryKeyLong(IGrain)
GetPrimaryKeyLong(IGrain, String)
GetPrimaryKeyLong(IAddressable)

Returns the long representation of a grain primary key.

GetPrimaryKeyLong(IAddressable, String)

Returns the long representation of a grain primary key.

GetPrimaryKeyString(IAddressable)

Returns the string primary key of the grain.

IsPrimaryKeyBasedOnLong(IAddressable)

Returns whether part of the primary key is of type long.

Applies to