内网细节修改

This commit is contained in:
范露尧
2022-10-27 09:24:50 +08:00
parent 1a605509be
commit 2e5e01a35d
10 changed files with 364 additions and 177 deletions

View File

@@ -1,7 +1,7 @@
Microsoft Visual Studio Solution File, Format Version 12.00 Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17 # Visual Studio Version 16
VisualStudioVersion = 17.1.32421.90 VisualStudioVersion = 16.0.31624.102
MinimumVisualStudioVersion = 10.0.40219.1 MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Getf_Service_Transfer_core_client", "Getf_Service_Transfer_core_client\Getf_Service_Transfer_core_client.csproj", "{F037E01A-741E-490C-91F0-76D97137DFA6}" Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Getf_Service_Transfer_core_client", "Getf_Service_Transfer_core_client\Getf_Service_Transfer_core_client.csproj", "{F037E01A-741E-490C-91F0-76D97137DFA6}"
EndProject EndProject

View File

@@ -51,15 +51,16 @@ namespace Getf_Service_Transfer_Client_Service_HttpHandler
{ {
var requestStream = httpWebRequest.GetRequestStream(); var requestStream = httpWebRequest.GetRequestStream();
SetRequestStream(httpWebRequest, requestStream, jObject, encoding); SetRequestStream(httpWebRequest, requestStream, jObject, encoding);
r = GetResponse(httpWebRequest, encoding); r = GetResponse(httpWebRequest, jObject, encoding);
requestStream.Close(); requestStream.Close();
requestStream.Dispose(); requestStream.Dispose();
} }
else else
{ {
r = GetResponse(httpWebRequest, encoding); r = GetResponse(httpWebRequest, null, encoding);
} }
msg = String.Empty; msg = String.Empty;
_LogHelper.Info($"93段接口:method:{method},url:{url},参数:{jObject["Data"]},结果:{r}");
return r; return r;
} }
catch (WebException e) catch (WebException e)
@@ -72,20 +73,20 @@ namespace Getf_Service_Transfer_Client_Service_HttpHandler
using (StreamReader streamReader = new StreamReader(stream)) using (StreamReader streamReader = new StreamReader(stream))
{ {
msg += streamReader.ReadToEnd(); msg += streamReader.ReadToEnd();
_LogHelper.Info("请求错误原因为:" + msg); _LogHelper.Info("1:请求错误原因为:" + msg);
} }
} }
else else
{ {
msg += e.Message; msg += e.Message;
_LogHelper.Info("请求错误原因为:" + msg); _LogHelper.Info("2:请求错误原因为:" + msg);
} }
} }
} }
catch (Exception e) catch (Exception e)
{ {
msg = e.Message; msg = e.Message;
_LogHelper.Info("请求错误原因为:" + msg); _LogHelper.Info("3:请求错误原因为:" + msg);
} }
return null; return null;
} }
@@ -126,12 +127,21 @@ namespace Getf_Service_Transfer_Client_Service_HttpHandler
{ {
var param = jObject["Param"]?.Value<string>() ?? String.Empty; var param = jObject["Param"]?.Value<string>() ?? String.Empty;
streamWrite.Write(param); streamWrite.Write(param);
var jdata = jObject["Data"];
if (jdata != null)
{
var Data = jdata.ToString();
var _bytes = encoding.GetBytes(Data);
httpWebRequest.ContentLength = _bytes.Length;
requestStream.Write(_bytes, 0, _bytes.Length);
}
} }
} }
private static readonly string[] TextContentTypes = new string[] { "application/json", "text/html" }; private static readonly string[] TextContentTypes = new string[] { "application/json", "text/html" };
private object GetResponse(HttpWebRequest httpWebRequest, Encoding encoding) private object GetResponse(HttpWebRequest httpWebRequest, JObject jObject, Encoding encoding)
{ {
var response = httpWebRequest.GetResponse(); var response = httpWebRequest.GetResponse();
using (var stream = response.GetResponseStream()) using (var stream = response.GetResponseStream())

View File

@@ -69,7 +69,10 @@ namespace Getf_Service_Transfer_Client_coreService
private void StartNewEasyClient() private void StartNewEasyClient()
{ {
if (TcpClient == null || !TcpClient.IsConnected)
TcpClient = new TcpClient(Ip, Port, OnDataGeted, OnConnected, OnClosed, OnError); TcpClient = new TcpClient(Ip, Port, OnDataGeted, OnConnected, OnClosed, OnError);
else
_LogHelper.Info("已存在可用连接");
} }
private void OnDataGeted(TransInfo transInfo) private void OnDataGeted(TransInfo transInfo)
@@ -129,7 +132,7 @@ namespace Getf_Service_Transfer_Client_coreService
ReStart(); ReStart();
} }
private void OnError(object sender, EventArgs e) private void OnError(object sender, ErrorEventArgs e)
{ {
string warn = "连接出错,原因为:" + ((ErrorEventArgs)e).Exception.Message; string warn = "连接出错,原因为:" + ((ErrorEventArgs)e).Exception.Message;
warn.LogWarning(); warn.LogWarning();
@@ -139,7 +142,7 @@ namespace Getf_Service_Transfer_Client_coreService
private void ReStart() private void ReStart()
{ {
Thread.Sleep(5000); //Thread.Sleep(5000);
StartNewEasyClient(); StartNewEasyClient();
} }
@@ -164,16 +167,21 @@ namespace Getf_Service_Transfer_Client_coreService
HeartThread = new Thread(() => HeartThread = new Thread(() =>
{ {
//_LogHelper.Info("开始发送心跳包");
while (true) while (true)
{ {
if ((DateTime.Now - LastRecvTime).TotalMinutes > 10) //_LogHelper.Info("开始发送心跳包1");
if ((DateTime.Now - LastRecvTime).TotalMinutes > 1)
{ {
_LogHelper.Info("超过一分钟没收到心跳包的反馈信息");
_LogHelper.Error("超过一分钟没收到心跳包的反馈信息"); _LogHelper.Error("超过一分钟没收到心跳包的反馈信息");
TcpClient.HeartLost(); TcpClient.HeartLost();
} }
if (TcpClient.IsConnected) if (TcpClient.IsConnected)
{ {
//_LogHelper.Info("存在连接,开始发送心跳包");
SendHeart(); SendHeart();
//_LogHelper.Info("存在连接,发送心跳包完成");
} }
Thread.Sleep(5 * 1000); Thread.Sleep(5 * 1000);
} }

View File

@@ -4,6 +4,16 @@
<TargetFramework>net5.0</TargetFramework> <TargetFramework>net5.0</TargetFramework>
</PropertyGroup> </PropertyGroup>
<ItemGroup>
<None Remove="applicationconfig.json" />
</ItemGroup>
<ItemGroup>
<Content Include="applicationconfig.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Furion" Version="4.6.5" /> <PackageReference Include="Furion" Version="4.6.5" />
<PackageReference Include="log4net" Version="2.0.15" /> <PackageReference Include="log4net" Version="2.0.15" />
@@ -12,10 +22,4 @@
<PackageReference Include="SuperSocket.ProtoBase" Version="1.7.0.17" /> <PackageReference Include="SuperSocket.ProtoBase" Version="1.7.0.17" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<None Update="applicationconfig.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>
</Project> </Project>

View File

@@ -20,7 +20,7 @@ namespace Getf_Service_Transfer_Client_coreService
Action<object, EventArgs> OnClosed; Action<object, EventArgs> OnClosed;
public bool IsConnected { get { return EasyClient.IsConnected; } } public bool IsConnected { get { return EasyClient.IsConnected; } }
public TcpClient(string ip, int port, Action<TransInfo> onDataGeted, Action<object, EventArgs> onConnected, Action<object, EventArgs> onClosed, Action<object, EventArgs> onError) public TcpClient(string ip, int port, Action<TransInfo> onDataGeted, Action<object, EventArgs> onConnected, Action<object, EventArgs> onClosed, Action<object, ErrorEventArgs> onError)
{ {
Ip = ip; Ip = ip;
Port = port; Port = port;

View File

@@ -17,11 +17,13 @@
] ]
}, },
"Target": { "Target": {
"ServiceAddressInfo": "127.0.0.1:8111", //目标服务器地址 "ServiceAddressInfo": "127.0.0.1:8002", //目标服务器地址
"DataHandlerClassInfo": "Getf_Service_Transfer_Client_Service_HttpHandler.HttpDataHandler,Getf_Service_Transfer_Client_Service_HttpHandler", "ServiceAddressInfo2": "10.19.94.135:8002", //目标服务器地址
"AppID": "test", "ServiceAddressInfo3": "115.238.132.35:6000", //目标服务器地址
"AppSecret": "b7ybdg482IXFsojQ4feDHf4NaiSLRtFjL7MVI6ysnvjrZ6jikFX74tVZhZKYG23A", "DataHandlerClassInfo": "Getf_Service_Transfer_Client_Service_HttpHandler.HttpJsonDataHandler,Getf_Service_Transfer_Client_Service_HttpHandler",
"Key": "TVgSoGYNJrnU7Kg6Csuodh4IdxqZGxpEJAdRlEcTn72KlUgAiHcr7bdxLKFf9pJ6" "AppID": "Reg.Custom.SourceCode",
"AppSecret": "ab2cb0aa78cb986d3d05059b8f9bafee",
"Key": "86bf52124bc423351c9da81cb3dd8c94"
}, },
"Logging": { "Logging": {
"LogLevel": { "LogLevel": {

View File

@@ -0,0 +1,14 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<ApplicationIcon />
<OutputType>Exe</OutputType>
<StartupObject />
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\Getf_Service_Transfer_core_client\Getf_Service_Transfer_core_client.csproj" />
</ItemGroup>
</Project>

View File

@@ -9,10 +9,17 @@
<PackageReference Include="Microsoft.Extensions.Hosting" Version="5.0.0" /> <PackageReference Include="Microsoft.Extensions.Hosting" Version="5.0.0" />
<PackageReference Include="Microsoft.Extensions.Hosting.Systemd" Version="5.0.1" /> <PackageReference Include="Microsoft.Extensions.Hosting.Systemd" Version="5.0.1" />
<PackageReference Include="Microsoft.Extensions.Hosting.WindowsServices" Version="5.0.1" /> <PackageReference Include="Microsoft.Extensions.Hosting.WindowsServices" Version="5.0.1" />
<PackageReference Include="Microsoft.Extensions.Logging.Log4Net.AspNetCore" Version="6.1.0" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ProjectReference Include="..\Getf_Service_Transfer_Client_coreService\Getf_Service_Transfer_Client_coreService.csproj" /> <ProjectReference Include="..\Getf_Service_Transfer_Client_coreService\Getf_Service_Transfer_Client_coreService.csproj" />
<ProjectReference Include="..\Getf_Service_Transfer_Client_Service_HttpHandler\Getf_Service_Transfer_Client_Service_HttpHandler.csproj" /> <ProjectReference Include="..\Getf_Service_Transfer_Client_Service_HttpHandler\Getf_Service_Transfer_Client_Service_HttpHandler.csproj" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<Content Update="log4net.config">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
</Project> </Project>

View File

@@ -44,8 +44,16 @@ namespace Getf_Service_Transfer_core_client
}; };
}); });
// services.AddHostedService<Worker>(); // services.AddHostedService<Worker>();
})//配置log4net
.ConfigureLogging(p =>
{
p.AddFilter("System", LogLevel.Warning); //过滤掉系统默认的一些日志
p.AddFilter("Microsoft", LogLevel.Warning);//过滤掉系统默认的一些日志
var path = AppContext.BaseDirectory + "\\log4net.config";
//不带参数表示log4net.config的配置文件就在应用程序根目录下也可以指定配置文件的路径
p.AddLog4Net(path);
}) })
//.UseWindowsService() ///windows部署 .UseWindowsService(); ///windows部署
.UseSystemd(); //LIUNX部署 // .UseSystemd(); //LIUNX部署
} }
} }

View File

@@ -0,0 +1,134 @@
<log4net>
<appender name="Console" type="log4net.Appender.ConsoleAppender">
<layout type="log4net.Layout.PatternLayout">
<!-- Pattern to output the caller's file name and line number -->
<conversionPattern value="%date %5level %logger.%method [%line] - MESSAGE: %message%newline %exception" />
</layout>
</appender>
<appender name="RollingFileError" type="log4net.Appender.RollingFileAppender">
<file value="logs\\" />
<appendToFile value="true" />
<rollingStyle value="Composite"/>
<datePattern value="yyyy\\MM\\yyyyMMdd'_error.txt'"/>
<staticLogFileName value="false" />
<maximumFileSize value="50MB" />
<maxSizeRollBackups value="200" />
<filter type="log4net.Filter.LevelRangeFilter">
<levelMin value="ERROR" />
<levelMax value="FATAL" />
</filter>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %5level %logger.%method [%line] - MESSAGE: %message%newline %exception" />
</layout>
</appender>
<!--<appender name="RollingFileInfo" type="log4net.Appender.RollingFileAppender">
<file value="logs\\" />
<appendToFile value="true" />
<rollingStyle value="date"/>
<datePattern value="yyyy\\MM\\yyyyMMdd'_info.txt'"/>
<staticLogFileName value="false" />
<filter type="log4net.Filter.LevelRangeFilter">
<levelMin value="Info" />
<levelMax value="Info" />
</filter>
<maximumFileSize value="100MB" />
<maxSizeRollBackups value="200" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %5level %logger.%method [%line] - MESSAGE: %message%newline %exception" />
</layout>
</appender>
<appender name="RollingFileWarn" type="log4net.Appender.RollingFileAppender">
<file value="logs\\" />
<appendToFile value="true" />
<rollingStyle value="date"/>
<datePattern value="yyyy\\MM\\yyyyMMdd'_warn.txt'"/>
<staticLogFileName value="false" />
<filter type="log4net.Filter.LevelRangeFilter">
<levelMin value="WARN" />
<levelMax value="WARN" />
</filter>
<maximumFileSize value="100MB" />
<maxSizeRollBackups value="200" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %5level %logger.%method [%line] - MESSAGE: %message%newline %exception" />
</layout>
</appender>
<appender name="RollingFileDebug" type="log4net.Appender.RollingFileAppender">
<file value="logs\\" />
<appendToFile value="true" />
<rollingStyle value="date"/>
<datePattern value="yyyy\\MM\\yyyyMMdd'_debug.txt'"/>
<staticLogFileName value="false" />
<filter type="log4net.Filter.LevelRangeFilter">
<levelMin value="Debug" />
<levelMax value="Debug" />
</filter>
<maximumFileSize value="100MB" />
<maxSizeRollBackups value="200" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %5level %logger.%method [%line] - MESSAGE: %message%newline %exception" />
</layout>
</appender>-->
<appender name="RollingFileAll" type="log4net.Appender.RollingFileAppender">
<file value="logs\\" />
<appendToFile value="true" />
<rollingStyle value="Composite"/>
<datePattern value="yyyy\\MM\\yyyyMMdd'.txt'"/>
<staticLogFileName value="false" />
<maximumFileSize value="50MB" />
<maxSizeRollBackups value="200" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %5level %logger.%method [%line] - MESSAGE: %message%newline %exception" />
</layout>
</appender>
<!--<appender name="RollingFileAll" type="log4net.Appender.RollingFileAppender">
<file value="logs\\" />
<appendToFile value="true" />
<rollingStyle value="date"/>
<datePattern value="yyyy\\MM\\yyyyMMdd'.txt'"/>
<staticLogFileName value="false" />
<maximumFileSize value="100KB" />
<maxSizeRollBackups value="2" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %5level %logger.%method [%line] - MESSAGE: %message%newline %exception" />
</layout>
</appender>-->
<appender name="TraceAppender" type="log4net.Appender.TraceAppender">
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %5level %logger.%method [%line] - MESSAGE: %message%newline %exception" />
</layout>
</appender>
<appender name="ConsoleAppender" type="log4net.Appender.ManagedColoredConsoleAppender">
<mapping>
<level value="ERROR" />
<foreColor value="Red" />
</mapping>
<mapping>
<level value="WARN" />
<foreColor value="Yellow" />
</mapping>
<mapping>
<level value="INFO" />
<foreColor value="White" />
</mapping>
<mapping>
<level value="DEBUG" />
<foreColor value="Green" />
</mapping>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %5level %logger.%method [%line] - MESSAGE: %message%newline %exception" />
</layout>
</appender>
<root>
<level value="TRACE" />
<appender-ref ref="RollingFileError" />
<!--<appender-ref ref="RollingFileInfo" />
<appender-ref ref="RollingFileWarn" />
<appender-ref ref="RollingFileDebug" />-->
<appender-ref ref="RollingFileAll" />
<appender-ref ref="TraceAppender" />
<appender-ref ref="ConsoleAppender" />
</root>
</log4net>