NAME

Paws::Discovery - Perl Interface to AWS AWS Application Discovery Service

SYNOPSIS

  use Paws;

  my $obj = Paws->service('Discovery');
  my $res = $obj->Method(
    Arg1 => $val1,
    Arg2 => [ 'V1', 'V2' ],
    # if Arg3 is an object, the HashRef will be used as arguments to the constructor
    # of the arguments type
    Arg3 => { Att1 => 'Val1' },
    # if Arg4 is an array of objects, the HashRefs will be passed as arguments to
    # the constructor of the arguments type
    Arg4 => [ { Att1 => 'Val1'  }, { Att1 => 'Val2' } ],
  );

DESCRIPTION

AWS Application Discovery Service

AWS Application Discovery Service helps you plan application migration projects. It automatically identifies servers, virtual machines (VMs), and network dependencies in your on-premises data centers. For more information, see the AWS Application Discovery Service FAQ (http://aws.amazon.com/application-discovery/faqs/). Application Discovery Service offers three ways of performing discovery and collecting data about your on-premises servers:

  • Agentless discovery is recommended for environments that use VMware vCenter Server. This mode doesn't require you to install an agent on each host. It does not work in non-VMware environments.

    • Agentless discovery gathers server information regardless of the operating systems, which minimizes the time required for initial on-premises infrastructure assessment.

    • Agentless discovery doesn't collect information about network dependencies, only agent-based discovery collects that information.

  • Agent-based discovery collects a richer set of data than agentless discovery by using the AWS Application Discovery Agent, which you install on one or more hosts in your data center.

    • The agent captures infrastructure and application information, including an inventory of running processes, system performance information, resource utilization, and network dependencies.

    • The information collected by agents is secured at rest and in transit to the Application Discovery Service database in the cloud.

  • AWS Partner Network (APN) solutions integrate with Application Discovery Service, enabling you to import details of your on-premises environment directly into Migration Hub without using the discovery connector or discovery agent.

    • Third-party application discovery tools can query AWS Application Discovery Service, and they can write to the Application Discovery Service database using the public API.

    • In this way, you can import data into Migration Hub and view it, so that you can associate applications with servers and track migrations.

Recommendations

We recommend that you use agent-based discovery for non-VMware environments, and whenever you want to collect information about network dependencies. You can run agent-based and agentless discovery simultaneously. Use agentless discovery to complete the initial infrastructure assessment quickly, and then install agents on select hosts to collect additional information.

Working With This Guide

This API reference provides descriptions, syntax, and usage examples for each of the actions and data types for Application Discovery Service. The topic for each action shows the API request parameters and the response. Alternatively, you can use one of the AWS SDKs to access an API that is tailored to the programming language or platform that you're using. For more information, see AWS SDKs (http://aws.amazon.com/tools/#SDKs).

  • Remember that you must set your Migration Hub home region before you call any of these APIs.

  • You must make API calls for write actions (create, notify, associate, disassociate, import, or put) while in your home region, or a HomeRegionNotSetException error is returned.

  • API calls for read actions (list, describe, stop, and delete) are permitted outside of your home region.

  • Although it is unlikely, the Migration Hub home region could change. If you call APIs outside the home region, an InvalidInputException is returned.

  • You must call GetHomeRegion to obtain the latest Migration Hub home region.

This guide is intended for use with the AWS Application Discovery Service User Guide (http://docs.aws.amazon.com/application-discovery/latest/userguide/).

All data is handled according to the AWS Privacy Policy (http://aws.amazon.com/privacy/). You can operate Application Discovery Service offline to inspect collected data before it is shared with the service.

For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/discovery-2015-11-01

METHODS

AssociateConfigurationItemsToApplication

ApplicationConfigurationId => Str
ConfigurationIds => ArrayRef[Str|Undef]

Each argument is described in detail in: Paws::Discovery::AssociateConfigurationItemsToApplication

Returns: a Paws::Discovery::AssociateConfigurationItemsToApplicationResponse instance

Associates one or more configuration items with an application.

BatchDeleteImportData

ImportTaskIds => ArrayRef[Str|Undef]

Each argument is described in detail in: Paws::Discovery::BatchDeleteImportData

Returns: a Paws::Discovery::BatchDeleteImportDataResponse instance

Deletes one or more import tasks, each identified by their import ID. Each import task has a number of records that can identify servers or applications.

AWS Application Discovery Service has built-in matching logic that will identify when discovered servers match existing entries that you've previously discovered, the information for the already-existing discovered server is updated. When you delete an import task that contains records that were used to match, the information in those matched records that comes from the deleted records will also be deleted.

CreateApplication

Name => Str
[Description => Str]

Each argument is described in detail in: Paws::Discovery::CreateApplication

Returns: a Paws::Discovery::CreateApplicationResponse instance

Creates an application with the given name and description.

CreateTags

ConfigurationIds => ArrayRef[Str|Undef]
Tags => ArrayRef[Paws::Discovery::Tag]

Each argument is described in detail in: Paws::Discovery::CreateTags

Returns: a Paws::Discovery::CreateTagsResponse instance

Creates one or more tags for configuration items. Tags are metadata that help you categorize IT assets. This API accepts a list of multiple configuration items.

DeleteApplications

ConfigurationIds => ArrayRef[Str|Undef]

Each argument is described in detail in: Paws::Discovery::DeleteApplications

Returns: a Paws::Discovery::DeleteApplicationsResponse instance

Deletes a list of applications and their associations with configuration items.

DeleteTags

ConfigurationIds => ArrayRef[Str|Undef]
[Tags => ArrayRef[Paws::Discovery::Tag]]

Each argument is described in detail in: Paws::Discovery::DeleteTags

Returns: a Paws::Discovery::DeleteTagsResponse instance

Deletes the association between configuration items and one or more tags. This API accepts a list of multiple configuration items.

DescribeAgents

[AgentIds => ArrayRef[Str|Undef]]
[Filters => ArrayRef[Paws::Discovery::Filter]]
[MaxResults => Int]
[NextToken => Str]

Each argument is described in detail in: Paws::Discovery::DescribeAgents

Returns: a Paws::Discovery::DescribeAgentsResponse instance

Lists agents or connectors as specified by ID or other filters. All agents/connectors associated with your user account can be listed if you call DescribeAgents as is without passing any parameters.

DescribeConfigurations

ConfigurationIds => ArrayRef[Str|Undef]

Each argument is described in detail in: Paws::Discovery::DescribeConfigurations

Returns: a Paws::Discovery::DescribeConfigurationsResponse instance

Retrieves attributes for a list of configuration item IDs.

All of the supplied IDs must be for the same asset type from one of the following:

  • server

  • application

  • process

  • connection

Output fields are specific to the asset type specified. For example, the output for a server configuration item includes a list of attributes about the server, such as host name, operating system, number of network cards, etc.

For a complete list of outputs for each asset type, see Using the DescribeConfigurations Action (https://docs.aws.amazon.com/application-discovery/latest/userguide/discovery-api-queries.html#DescribeConfigurations) in the AWS Application Discovery Service User Guide.

DescribeContinuousExports

[ExportIds => ArrayRef[Str|Undef]]
[MaxResults => Int]
[NextToken => Str]

Each argument is described in detail in: Paws::Discovery::DescribeContinuousExports

Returns: a Paws::Discovery::DescribeContinuousExportsResponse instance

Lists exports as specified by ID. All continuous exports associated with your user account can be listed if you call DescribeContinuousExports as is without passing any parameters.

DescribeExportConfigurations

[ExportIds => ArrayRef[Str|Undef]]
[MaxResults => Int]
[NextToken => Str]

Each argument is described in detail in: Paws::Discovery::DescribeExportConfigurations

Returns: a Paws::Discovery::DescribeExportConfigurationsResponse instance

DescribeExportConfigurations is deprecated. Use DescribeImportTasks (https://docs.aws.amazon.com/application-discovery/latest/APIReference/API_DescribeExportTasks.html), instead.

DescribeExportTasks

[ExportIds => ArrayRef[Str|Undef]]
[Filters => ArrayRef[Paws::Discovery::ExportFilter]]
[MaxResults => Int]
[NextToken => Str]

Each argument is described in detail in: Paws::Discovery::DescribeExportTasks

Returns: a Paws::Discovery::DescribeExportTasksResponse instance

Retrieve status of one or more export tasks. You can retrieve the status of up to 100 export tasks.

DescribeImportTasks

[Filters => ArrayRef[Paws::Discovery::ImportTaskFilter]]
[MaxResults => Int]
[NextToken => Str]

Each argument is described in detail in: Paws::Discovery::DescribeImportTasks

Returns: a Paws::Discovery::DescribeImportTasksResponse instance

Returns an array of import tasks for your account, including status information, times, IDs, the Amazon S3 Object URL for the import file, and more.

DescribeTags

[Filters => ArrayRef[Paws::Discovery::TagFilter]]
[MaxResults => Int]
[NextToken => Str]

Each argument is described in detail in: Paws::Discovery::DescribeTags

Returns: a Paws::Discovery::DescribeTagsResponse instance

Retrieves a list of configuration items that have tags as specified by the key-value pairs, name and value, passed to the optional parameter filters.

There are three valid tag filter names:

  • tagKey

  • tagValue

  • configurationId

Also, all configuration items associated with your user account that have tags can be listed if you call DescribeTags as is without passing any parameters.

DisassociateConfigurationItemsFromApplication

ApplicationConfigurationId => Str
ConfigurationIds => ArrayRef[Str|Undef]

Each argument is described in detail in: Paws::Discovery::DisassociateConfigurationItemsFromApplication

Returns: a Paws::Discovery::DisassociateConfigurationItemsFromApplicationResponse instance

Disassociates one or more configuration items from an application.

ExportConfigurations

=>

Each argument is described in detail in: Paws::Discovery::ExportConfigurations

Returns: a Paws::Discovery::ExportConfigurationsResponse instance

Deprecated. Use StartExportTask instead.

Exports all discovered configuration data to an Amazon S3 bucket or an application that enables you to view and evaluate the data. Data includes tags and tag associations, processes, connections, servers, and system performance. This API returns an export ID that you can query using the DescribeExportConfigurations API. The system imposes a limit of two configuration exports in six hours.

GetDiscoverySummary

Each argument is described in detail in: Paws::Discovery::GetDiscoverySummary

Returns: a Paws::Discovery::GetDiscoverySummaryResponse instance

Retrieves a short summary of discovered assets.

This API operation takes no request parameters and is called as is at the command prompt as shown in the example.

ListConfigurations

ConfigurationType => Str
[Filters => ArrayRef[Paws::Discovery::Filter]]
[MaxResults => Int]
[NextToken => Str]
[OrderBy => ArrayRef[Paws::Discovery::OrderByElement]]

Each argument is described in detail in: Paws::Discovery::ListConfigurations

Returns: a Paws::Discovery::ListConfigurationsResponse instance

Retrieves a list of configuration items as specified by the value passed to the required parameter configurationType. Optional filtering may be applied to refine search results.

ListServerNeighbors

ConfigurationId => Str
[MaxResults => Int]
[NeighborConfigurationIds => ArrayRef[Str|Undef]]
[NextToken => Str]
[PortInformationNeeded => Bool]

Each argument is described in detail in: Paws::Discovery::ListServerNeighbors

Returns: a Paws::Discovery::ListServerNeighborsResponse instance

Retrieves a list of servers that are one network hop away from a specified server.

StartContinuousExport

Each argument is described in detail in: Paws::Discovery::StartContinuousExport

Returns: a Paws::Discovery::StartContinuousExportResponse instance

Start the continuous flow of agent's discovered data into Amazon Athena.

StartDataCollectionByAgentIds

AgentIds => ArrayRef[Str|Undef]

Each argument is described in detail in: Paws::Discovery::StartDataCollectionByAgentIds

Returns: a Paws::Discovery::StartDataCollectionByAgentIdsResponse instance

Instructs the specified agents or connectors to start collecting data.

StartExportTask

[EndTime => Str]
[ExportDataFormat => ArrayRef[Str|Undef]]
[Filters => ArrayRef[Paws::Discovery::ExportFilter]]
[StartTime => Str]

Each argument is described in detail in: Paws::Discovery::StartExportTask

Returns: a Paws::Discovery::StartExportTaskResponse instance

Begins the export of discovered data to an S3 bucket.

If you specify agentIds in a filter, the task exports up to 72 hours of detailed data collected by the identified Application Discovery Agent, including network, process, and performance details. A time range for exported agent data may be set by using startTime and endTime. Export of detailed agent data is limited to five concurrently running exports.

If you do not include an agentIds filter, summary data is exported that includes both AWS Agentless Discovery Connector data and summary data from AWS Discovery Agents. Export of summary data is limited to two exports per day.

StartImportTask

ImportUrl => Str
Name => Str
[ClientRequestToken => Str]

Each argument is described in detail in: Paws::Discovery::StartImportTask

Returns: a Paws::Discovery::StartImportTaskResponse instance

Starts an import task, which allows you to import details of your on-premises environment directly into AWS Migration Hub without having to use the Application Discovery Service (ADS) tools such as the Discovery Connector or Discovery Agent. This gives you the option to perform migration assessment and planning directly from your imported data, including the ability to group your devices as applications and track their migration status.

To start an import request, do this:

  1. Download the specially formatted comma separated value (CSV) import template, which you can find here: https://s3-us-west-2.amazonaws.com/templates-7cffcf56-bd96-4b1c-b45b-a5b42f282e46/import_template.csv (https://s3-us-west-2.amazonaws.com/templates-7cffcf56-bd96-4b1c-b45b-a5b42f282e46/import_template.csv).

  2. Fill out the template with your server and application data.

  3. Upload your import file to an Amazon S3 bucket, and make a note of it's Object URL. Your import file must be in the CSV format.

  4. Use the console or the StartImportTask command with the AWS CLI or one of the AWS SDKs to import the records from your file.

For more information, including step-by-step procedures, see Migration Hub Import (https://docs.aws.amazon.com/application-discovery/latest/userguide/discovery-import.html) in the AWS Application Discovery Service User Guide.

There are limits to the number of import tasks you can create (and delete) in an AWS account. For more information, see AWS Application Discovery Service Limits (https://docs.aws.amazon.com/application-discovery/latest/userguide/ads_service_limits.html) in the AWS Application Discovery Service User Guide.

StopContinuousExport

ExportId => Str

Each argument is described in detail in: Paws::Discovery::StopContinuousExport

Returns: a Paws::Discovery::StopContinuousExportResponse instance

Stop the continuous flow of agent's discovered data into Amazon Athena.

StopDataCollectionByAgentIds

AgentIds => ArrayRef[Str|Undef]

Each argument is described in detail in: Paws::Discovery::StopDataCollectionByAgentIds

Returns: a Paws::Discovery::StopDataCollectionByAgentIdsResponse instance

Instructs the specified agents or connectors to stop collecting data.

UpdateApplication

ConfigurationId => Str
[Description => Str]
[Name => Str]

Each argument is described in detail in: Paws::Discovery::UpdateApplication

Returns: a Paws::Discovery::UpdateApplicationResponse instance

Updates metadata about an application.

PAGINATORS

Paginator methods are helpers that repetively call methods that return partial results

DescribeAllAgents(sub { },[AgentIds => ArrayRef[Str|Undef], Filters => ArrayRef[Paws::Discovery::Filter], MaxResults => Int, NextToken => Str])

DescribeAllAgents([AgentIds => ArrayRef[Str|Undef], Filters => ArrayRef[Paws::Discovery::Filter], MaxResults => Int, NextToken => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

 - agentsInfo, passing the object as the first parameter, and the string 'agentsInfo' as the second parameter 

If not, it will return a a Paws::Discovery::DescribeAgentsResponse instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

DescribeAllContinuousExports(sub { },[ExportIds => ArrayRef[Str|Undef], MaxResults => Int, NextToken => Str])

DescribeAllContinuousExports([ExportIds => ArrayRef[Str|Undef], MaxResults => Int, NextToken => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

 - descriptions, passing the object as the first parameter, and the string 'descriptions' as the second parameter 

If not, it will return a a Paws::Discovery::DescribeContinuousExportsResponse instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

DescribeAllExportConfigurations(sub { },[ExportIds => ArrayRef[Str|Undef], MaxResults => Int, NextToken => Str])

DescribeAllExportConfigurations([ExportIds => ArrayRef[Str|Undef], MaxResults => Int, NextToken => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

 - exportsInfo, passing the object as the first parameter, and the string 'exportsInfo' as the second parameter 

If not, it will return a a Paws::Discovery::DescribeExportConfigurationsResponse instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

DescribeAllExportTasks(sub { },[ExportIds => ArrayRef[Str|Undef], Filters => ArrayRef[Paws::Discovery::ExportFilter], MaxResults => Int, NextToken => Str])

DescribeAllExportTasks([ExportIds => ArrayRef[Str|Undef], Filters => ArrayRef[Paws::Discovery::ExportFilter], MaxResults => Int, NextToken => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

 - exportsInfo, passing the object as the first parameter, and the string 'exportsInfo' as the second parameter 

If not, it will return a a Paws::Discovery::DescribeExportTasksResponse instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

DescribeAllTags(sub { },[Filters => ArrayRef[Paws::Discovery::TagFilter], MaxResults => Int, NextToken => Str])

DescribeAllTags([Filters => ArrayRef[Paws::Discovery::TagFilter], MaxResults => Int, NextToken => Str])

If passed a sub as first parameter, it will call the sub for each element found in :

 - tags, passing the object as the first parameter, and the string 'tags' as the second parameter 

If not, it will return a a Paws::Discovery::DescribeTagsResponse instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

ListAllConfigurations(sub { },ConfigurationType => Str, [Filters => ArrayRef[Paws::Discovery::Filter], MaxResults => Int, NextToken => Str, OrderBy => ArrayRef[Paws::Discovery::OrderByElement]])

ListAllConfigurations(ConfigurationType => Str, [Filters => ArrayRef[Paws::Discovery::Filter], MaxResults => Int, NextToken => Str, OrderBy => ArrayRef[Paws::Discovery::OrderByElement]])

If passed a sub as first parameter, it will call the sub for each element found in :

 - configurations, passing the object as the first parameter, and the string 'configurations' as the second parameter 

If not, it will return a a Paws::Discovery::ListConfigurationsResponse instance with all the params; from all the responses. Please take into account that this mode can potentially consume vasts ammounts of memory.

SEE ALSO

This service class forms part of Paws

BUGS and CONTRIBUTIONS

The source code is located here: https://github.com/pplu/aws-sdk-perl

Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues