* handle version exceptions

* adding log warning

* adding module names

---------

Co-authored-by: Amitla Vannikumar <avannikumar@microsoft.com>
This commit is contained in:
Amitla Vannikumar 2024-10-14 15:40:48 -07:00 коммит произвёл GitHub
Родитель 96cc922b48
Коммит ae287518d4
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: B5690EEEBB952194
2 изменённых файлов: 13 добавлений и 2 удалений

Просмотреть файл

@ -7,4 +7,6 @@ public class GoReplaceTelemetryRecord : BaseDetectionTelemetryRecord
public string GoModPathAndVersion { get; set; }
public string GoModReplacement { get; set; }
public string ExceptionMessage { get; set; }
}

Просмотреть файл

@ -477,10 +477,19 @@ public class GoComponentDetector : FileComponentDetector
if (dependency.Replace?.Path != null && dependency.Replace.Version != null)
{
var dependencyReplacementName = $"{dependency.Replace.Path} {dependency.Replace.Version}";
goComponent = new GoComponent(dependency.Replace.Path, dependency.Replace.Version);
this.Logger.LogInformation("go Module {GoModule} being replaced with module {GoModuleReplacement}", dependencyName, dependencyReplacementName);
record.GoModPathAndVersion = dependencyName;
record.GoModReplacement = dependencyReplacementName;
try
{
goComponent = new GoComponent(dependency.Replace.Path, dependency.Replace.Version);
this.Logger.LogInformation("go Module {GoModule} being replaced with module {GoModuleReplacement}", dependencyName, dependencyReplacementName);
}
catch (Exception ex)
{
record.ExceptionMessage = ex.Message;
this.Logger.LogWarning("tried to use replace module {GoModuleReplacement} but got this error {ErrorMessage} using original module {GoModule} instead", dependencyReplacementName, ex.Message, dependencyName);
goComponent = new GoComponent(dependency.Path, dependency.Version);
}
}
else
{