Mengkonfigurasi Parameter Aplikasi Lainnya - AWS SDK for .NET

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengkonfigurasi Parameter Aplikasi Lainnya

catatan

Informasi dalam topik ini khusus untuk proyek berdasarkan .NET Framework. Web.configFile App.config dan tidak ada secara default dalam proyek berdasarkan .NET Core.

Ada sejumlah parameter aplikasi yang dapat Anda konfigurasikan:

Parameter ini dapat dikonfigurasi dalam aplikasi App.config atau Web.config file. Meskipun Anda juga dapat mengonfigurasinya dengan AWS SDK for .NET API, kami sarankan Anda menggunakan .config file aplikasi. Kedua pendekatan tersebut dijelaskan di sini.

Untuk informasi selengkapnya tentang penggunaan <aws> elemen seperti yang dijelaskan nanti dalam topik ini, lihat Referensi File Konfigurasi untuk AWS SDK for .NET.

AWSLogging

Mengonfigurasi bagaimana SDK harus mencatat peristiwa, jika ada. Misalnya, pendekatan yang disarankan adalah dengan menggunakan <logging> elemen, yang merupakan elemen anak dari <aws> elemen:

<aws> <logging logTo="Log4Net"/> </aws>

Atau:

<add key="AWSLogging" value="log4net"/>

Nilai yang mungkin adalah:

None

Matikan pencatatan peristiwa. Ini adalah default.

log4net

Log menggunakan log4net.

SystemDiagnostics

Log menggunakan System.Diagnostics kelas.

Anda dapat mengatur beberapa nilai untuk logTo atribut, dipisahkan dengan koma. Contoh berikut menetapkan keduanya log4net dan System.Diagnostics masuk ke dalam .config file:

<logging logTo="Log4Net, SystemDiagnostics"/>

Atau:

<add key="AWSLogging" value="log4net, SystemDiagnostics"/>

Atau, dengan menggunakan AWS SDK for .NET API, gabungkan nilai LoggingOptionsenumerasi dan setel properti .Logging: AWSConfigs

AWSConfigs.Logging = LoggingOptions.Log4Net | LoggingOptions.SystemDiagnostics;

Perubahan pada setelan ini hanya berlaku untuk instance AWS klien baru.

AWSLogMetrics

Menentukan apakah SDK harus mencatat metrik kinerja atau tidak. Untuk mengatur konfigurasi logging metrik dalam .config file, atur nilai logMetrics atribut dalam <logging> elemen, yang merupakan elemen anak dari <aws> elemen:

<aws> <logging logMetrics="true"/> </aws>

Atau, atur AWSLogMetrics kunci di <appSettings> bagian:

<add key="AWSLogMetrics" value="true">

Atau, untuk menyetel pencatatan metrik dengan AWS SDK for .NET API, setel file. AWSConfigs LogMetricsproperti:

AWSConfigs.LogMetrics = true;

Pengaturan ini mengkonfigurasi LogMetrics properti default untuk semua klien/konfigurasi. Perubahan pada setelan ini hanya berlaku untuk instance AWS klien baru.

AWSRegion

Mengkonfigurasi AWS wilayah default untuk klien yang belum secara eksplisit menentukan wilayah. Untuk mengatur wilayah dalam .config file, pendekatan yang disarankan adalah mengatur nilai region atribut dalam aws elemen:

<aws region="us-west-2"/>

Atau, atur AWSRegionkunci di <appSettings> bagian:

<add key="AWSRegion" value="us-west-2"/>

Atau, untuk menyetel wilayah dengan AWS SDK for .NET API, atur AWSConfigs. AWSRegionproperti:

AWSConfigs.AWSRegion = "us-west-2";

Untuk informasi selengkapnya tentang membuat AWS klien untuk wilayah tertentu, lihat Pemilihan AWS Wilayah. Perubahan pada setelan ini hanya berlaku untuk instance AWS klien baru.

AWSResponseLogging

Mengkonfigurasi kapan SDK harus mencatat respons layanan. Nilai yang mungkin adalah:

Never

Jangan pernah mencatat tanggapan layanan. Ini adalah default.

Always

Selalu log tanggapan layanan.

OnError

Hanya log tanggapan layanan ketika terjadi kesalahan.

Untuk mengatur konfigurasi pencatatan layanan dalam .config file, pendekatan yang disarankan adalah mengatur nilai logResponses atribut dalam <logging> elemen, yang merupakan elemen anak dari <aws> elemen:

<aws> <logging logResponses="OnError"/> </aws>

Atau, atur AWSResponseLoggingkunci di <appSettings> bagian:

<add key="AWSResponseLogging" value="OnError"/>

Atau, untuk mengatur pencatatan layanan dengan AWS SDK for .NET API, setel file AWSConfigs. ResponseLoggingproperti ke salah satu nilai ResponseLoggingOptionpencacahan:

AWSConfigs.ResponseLogging = ResponseLoggingOption.OnError;

Perubahan pada pengaturan ini segera berlaku.

AWS.DynamoDBContext.TableNamePrefix

Mengkonfigurasi default TableNamePrefix yang DynamoDBContext akan digunakan jika tidak dikonfigurasi secara manual.

Untuk mengatur awalan nama tabel dalam .config file, pendekatan yang disarankan adalah mengatur nilai tableNamePrefix atribut dalam <dynamoDBContext> elemen, yang merupakan elemen anak dari <dynamoDB> elemen, yang merupakan elemen anak dari <aws> elemen:

<dynamoDBContext tableNamePrefix="Test-"/>

Atau, atur AWS.DynamoDBContext.TableNamePrefix kunci di <appSettings> bagian:

<add key="AWS.DynamoDBContext.TableNamePrefix" value="Test-"/>

Atau, untuk mengatur awalan nama tabel dengan AWS SDK for .NET API, setel properti AWSConfigsContextTableNamePrefix.dynamoDB:

AWSConfigs.DynamoDBContextTableNamePrefix = "Test-";

Perubahan pada pengaturan ini hanya akan berlaku dalam contoh yang baru dibangun dari DynamoDBContextConfig danDynamoDBContext.

AWS.S3.UseSignatureVersion4

Mengkonfigurasi apakah klien Amazon S3 harus menggunakan tanda tangan versi 4 penandatanganan dengan permintaan atau tidak.

Untuk mengatur tanda tangan versi 4 penandatanganan untuk Amazon S3 dalam .config file, pendekatan yang disarankan adalah mengatur useSignatureVersion4 atribut <s3> elemen, yang merupakan elemen turunan dari elemen: <aws>

<aws> <s3 useSignatureVersion4="true"/> </aws>

Atau, atur AWS.S3.UseSignatureVersion4 kuncinya true di <appSettings> bagian:

<add key="AWS.S3.UseSignatureVersion4" value="true"/>

Atau, untuk menyetel tanda tangan penandatanganan versi 4 dengan AWS SDK for .NET API, setel AWSConfigsproperti.S3 UseSignatureVersion 4 ke: true

AWSConfigs.S3UseSignatureVersion4 = true;

Secara default, pengaturan inifalse, tetapi versi tanda tangan 4 dapat digunakan secara default dalam beberapa kasus atau dengan beberapa wilayah. Saat pengaturannyatrue, tanda tangan versi 4 akan digunakan untuk semua permintaan. Perubahan pada setelan ini hanya berlaku untuk instans klien Amazon S3 baru.

AWSEndpointDefinition

Mengonfigurasi apakah SDK harus menggunakan file konfigurasi khusus yang mendefinisikan wilayah dan titik akhir.

Untuk mengatur file definisi titik akhir dalam .config file, kami sarankan untuk mengatur nilai endpointDefinition atribut dalam <aws> elemen.

<aws endpointDefinition="c:\config\endpoints.json"/>

Atau, Anda dapat mengatur AWSEndpointDefinitionkunci di <appSettings> bagian:

<add key="AWSEndpointDefinition" value="c:\config\endpoints.json"/>

Atau, untuk menyetel file definisi titik akhir dengan AWS SDK for .NET API, setel file. AWSConfigs EndpointDefinitionproperti:

AWSConfigs.EndpointDefinition = @"c:\config\endpoints.json";

Jika tidak ada nama file yang disediakan, maka file konfigurasi khusus tidak akan digunakan. Perubahan pada setelan ini hanya berlaku untuk instance AWS klien baru. File endpoint.json tersedia dari file. https://github.com/aws/aws-sdk-net/blob/master/sdk/src/Core/endpoints.json

AWSTitik Akhir yang Dihasilkan Layanan

Beberapa AWS layanan menghasilkan titik akhir mereka sendiri alih-alih menggunakan titik akhir wilayah. Klien untuk layanan ini menggunakan URL layanan yang khusus untuk layanan itu dan sumber daya Anda. Dua contoh layanan ini adalah Amazon CloudSearch danAWS IoT. Contoh berikut menunjukkan bagaimana Anda dapat memperoleh titik akhir untuk layanan tersebut.

Contoh CloudSearch Titik Akhir Amazon

CloudSearch Klien Amazon digunakan untuk mengakses layanan CloudSearch konfigurasi Amazon. Anda menggunakan layanan CloudSearch konfigurasi Amazon untuk membuat, mengonfigurasi, dan mengelola domain penelusuran. Untuk membuat domain pencarian, buat CreateDomainRequestobjek dan berikan DomainName properti. Buat AmazonCloudSearchClientobjek dengan menggunakan objek permintaan. Panggil metode CreateDomain. CreateDomainResponseObjek yang dikembalikan dari panggilan berisi DomainStatus properti yang memiliki titik akhir DocService dan SearchService titik akhir. Buat AmazonCloudSearchDomainConfigobjek dan gunakan untuk menginisialisasi DocService dan SearchService contoh kelas. AmazonCloudSearchDomainClient

// Create domain and retrieve DocService and SearchService endpoints DomainStatus domainStatus; using (var searchClient = new AmazonCloudSearchClient()) { var request = new CreateDomainRequest { DomainName = "testdomain" }; domainStatus = searchClient.CreateDomain(request).DomainStatus; Console.WriteLine(domainStatus.DomainName + " created"); } // Test the DocService endpoint var docServiceConfig = new AmazonCloudSearchDomainConfig { ServiceURL = "https://" + domainStatus.DocService.Endpoint }; using (var domainDocService = new AmazonCloudSearchDomainClient(docServiceConfig)) { Console.WriteLine("Amazon CloudSearchDomain DocService client instantiated using the DocService endpoint"); Console.WriteLine("DocService endpoint = " + domainStatus.DocService.Endpoint); using (var docStream = new FileStream(@"C:\doc_source\XMLFile4.xml", FileMode.Open)) { var upload = new UploadDocumentsRequest { ContentType = ContentType.ApplicationXml, Documents = docStream }; domainDocService.UploadDocuments(upload); } } // Test the SearchService endpoint var searchServiceConfig = new AmazonCloudSearchDomainConfig { ServiceURL = "https://" + domainStatus.SearchService.Endpoint }; using (var domainSearchService = new AmazonCloudSearchDomainClient(searchServiceConfig)) { Console.WriteLine("Amazon CloudSearchDomain SearchService client instantiated using the SearchService endpoint"); Console.WriteLine("SearchService endpoint = " + domainStatus.SearchService.Endpoint); var searchReq = new SearchRequest { Query = "Gambardella", Sort = "_score desc", QueryParser = QueryParser.Simple }; var searchResp = domainSearchService.Search(searchReq); }

AWS IoTContoh Titik Akhir

Untuk mendapatkan titik akhirAWS IoT, buat objek AmazonIoTClient dan panggil metode. DescribeEndPoint DescribeEndPointResponseObjek yang dikembalikan berisi fileEndpointAddress. Buat AmazonIotDataConfigobjek, atur ServiceURL properti, dan gunakan objek untuk membuat instance kelas. AmazonIotDataClient

string iotEndpointAddress; using (var iotClient = new AmazonIoTClient()) { var endPointResponse = iotClient.DescribeEndpoint(); iotEndpointAddress = endPointResponse.EndpointAddress; } var ioTdocServiceConfig = new AmazonIotDataConfig { ServiceURL = "https://" + iotEndpointAddress }; using (var dataClient = new AmazonIotDataClient(ioTdocServiceConfig)) { Console.WriteLine("AWS IoTData client instantiated using the endpoint from the IotClient"); }