Мы используем следующую программу тестирования, чтобы запустить сеанс пересылки порта AWS SDK в C#, и программа заканчивается без каких -либо проблем. Однако после завершения программы сеанс заканчивается менее чем за 30 секунд. Похоже, сеансы, начатые SDK, на самом деле не работают. Мы все еще ищем, почему. И результат: < /p>
Если сеанс был запущен с помощью C# Calmings of AWS CLI, тест проходит. < /P>
< /li>
Если сеанс был запущен с вызова API C# в SDK, тест не выполняется со следующим сообщением об ошибке: < /p>
Не удалось вход в систему mysql.
exex.message: Невозможно подключиться к любому из указанных хостов MySQL. < /p>
< /blockquote>
< /li >
< /ul>
Если мы используем AWS CLI вместо SDK, следующая команда может запустить сеанс и сохраняться. Команда будет работать, а сеанс продолжает работать и принимать запросы. Пока мы не нажмите Control + C , процесс будет убит, и сеанс завершается.
aws ssm start-session \
--target "i-xxx" --region "xxxxxxx" --profile "profile_name" \
--document-name "AWS-StartPortForwardingSessionToRemoteHost" \
--parameters host="xxxx-database-cluster.xxx.rds.amazonaws.com",portNumber="3306",localPortNumber="3306"
< /code>
Мы предпочитаем использовать SDK, потому что он обеспечивает лучшую функциональность для программного использования, поэтому укажите, что мы что -то пропустили в программе. > Подробная информация
Примечание. Следующий исходный код тестирования автоматически относится к местоположению по умолчанию в ~/.aws/ для его конфигурации и учетных данных < /code> files. < /p>
public static async Task CallSDKAsync()
{
// Load AWS credentials from the specified profile
var credentials = new Amazon.Runtime.StoredProfileAWSCredentials(SensitiveData.AwsProfile);
// Create the SSM client using the credentials
var client = new AmazonSimpleSystemsManagementClient(credentials, SensitiveData.AwsRegionEndpoint);
// Define the port forwarding parameters
var startSessionRequest = new StartSessionRequest
{
DocumentName = "AWS-StartPortForwardingSessionToRemoteHost",
Parameters = new Dictionary()
{
{ "host", new List { SensitiveData.DatabaseHost } },
{ "portNumber", new List { "3306" } },
{ "localPortNumber", new List { "3306" } }
},
Target = SensitiveData.AwsInstanceId
};
try
{
var response = await client.StartSessionAsync(startSessionRequest);
Console.WriteLine(response.ToString());
Console.WriteLine("Session started successfully.");
}
catch (AmazonServiceException amazonEx)
{
Console.WriteLine($"AWS Service error: {amazonEx.Message}");
Console.WriteLine($"Status Code: {amazonEx.StatusCode}");
Console.WriteLine($"AWS Error Code: {amazonEx.ErrorCode}");
Console.WriteLine($"Request ID: {amazonEx.RequestId}");
Console.WriteLine($"AWS Error Type: {amazonEx.ErrorType}");
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
Console.WriteLine(ex.InnerException?.Message);
}
}
Подробнее здесь: https://stackoverflow.com/questions/794 ... -terminate
Нужна помощь: сеансы пересылки портов, начатые AWS SDK, не работают и не заканчиваются менее чем за 30 секунд, почему? ⇐ C#
Место общения программистов C#
1739579857
Anonymous
Мы используем следующую программу тестирования, чтобы запустить сеанс пересылки порта AWS SDK в C#, и программа заканчивается без каких -либо проблем. Однако после завершения программы сеанс заканчивается менее чем за 30 секунд. Похоже, сеансы, начатые SDK, на самом деле не работают. Мы все еще ищем, почему. И результат: < /p>
Если сеанс был запущен с помощью C# Calmings of AWS CLI, тест проходит. < /P>
< /li>
Если сеанс был запущен с вызова API C# в SDK, тест не выполняется со следующим сообщением об ошибке: < /p>
Не удалось вход в систему mysql.
exex.message: Невозможно подключиться к любому из указанных хостов MySQL. < /p>
< /blockquote>
< /li >
< /ul>
Если мы используем AWS CLI вместо SDK, следующая команда может запустить сеанс и сохраняться. Команда будет работать, а сеанс продолжает работать и принимать запросы. Пока мы не нажмите Control + C , процесс будет убит, и сеанс завершается.
aws ssm start-session \
--target "i-xxx" --region "xxxxxxx" --profile "profile_name" \
--document-name "AWS-StartPortForwardingSessionToRemoteHost" \
--parameters host="xxxx-database-cluster.xxx.rds.amazonaws.com",portNumber="3306",localPortNumber="3306"
< /code>
Мы предпочитаем использовать SDK, потому что он обеспечивает лучшую функциональность для программного использования, поэтому укажите, что мы что -то пропустили в программе. > Подробная информация
Примечание. Следующий исходный код тестирования автоматически относится к местоположению по умолчанию в ~/.aws/ для его конфигурации и учетных данных < /code> files. < /p>
public static async Task CallSDKAsync()
{
// Load AWS credentials from the specified profile
var credentials = new Amazon.Runtime.StoredProfileAWSCredentials(SensitiveData.AwsProfile);
// Create the SSM client using the credentials
var client = new AmazonSimpleSystemsManagementClient(credentials, SensitiveData.AwsRegionEndpoint);
// Define the port forwarding parameters
var startSessionRequest = new StartSessionRequest
{
DocumentName = "AWS-StartPortForwardingSessionToRemoteHost",
Parameters = new Dictionary()
{
{ "host", new List { SensitiveData.DatabaseHost } },
{ "portNumber", new List { "3306" } },
{ "localPortNumber", new List { "3306" } }
},
Target = SensitiveData.AwsInstanceId
};
try
{
var response = await client.StartSessionAsync(startSessionRequest);
Console.WriteLine(response.ToString());
Console.WriteLine("Session started successfully.");
}
catch (AmazonServiceException amazonEx)
{
Console.WriteLine($"AWS Service error: {amazonEx.Message}");
Console.WriteLine($"Status Code: {amazonEx.StatusCode}");
Console.WriteLine($"AWS Error Code: {amazonEx.ErrorCode}");
Console.WriteLine($"Request ID: {amazonEx.RequestId}");
Console.WriteLine($"AWS Error Type: {amazonEx.ErrorType}");
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
Console.WriteLine(ex.InnerException?.Message);
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79440371/need-help-port-forwarding-sessions-started-by-aws-sdk-do-not-work-and-terminate[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия