ソースを参照

dockerfile 安装TDengine 客户端

td_orm
H Vs 1年前
コミット
4d15e17550
5個のファイルの変更38行の追加18行の削除
  1. +2
    -1
      HealthMonitor.Service/Sub/TDengineDataSubcribe.cs
  2. +14
    -14
      HealthMonitor.WebApi/Controllers/WeatherForecastController.cs
  3. +17
    -1
      HealthMonitor.WebApi/Dockerfile
  4. +1
    -1
      HealthMonitor.WebApi/PackageProcess.cs
  5. +4
    -1
      HealthMonitor.WebApi/Worker.cs

+ 2
- 1
HealthMonitor.Service/Sub/TDengineDataSubcribe.cs ファイルの表示

@@ -87,7 +87,8 @@ namespace HealthMonitor.Service.Sub
var conn = TDengine.Connect(host, username, password, dbname, port);
if (conn == IntPtr.Zero)
{
throw new Exception("Connect to TDengine failed");
_logger.LogError("reason:" + TDengine.Error(conn));
throw new Exception("Connect to TDengine failed"+DateTime.Now.ToString());
}
else
{


+ 14
- 14
HealthMonitor.WebApi/Controllers/WeatherForecastController.cs ファイルの表示

@@ -34,24 +34,24 @@ namespace HealthMonitor.WebApi.Controllers
// .ToArray();
//}

[HttpGet(Name = "GetWeatherForecast")]
public async Task<IActionResult> Get()
{
IntPtr conn = _serviceTDengine.Connection();
var sql = "select * from gps_bloodpress";
//Task.Factory.StartNew(async () =>
//{
// await _serviceTDengine.ExecuteQuerySQL(conn, sql);
//});
//[HttpGet(Name = "GetWeatherForecast")]
//public async Task<IActionResult> Get()
//{
// IntPtr conn = _serviceTDengine.Connection();
// var sql = "select * from gps_bloodpress";
// //Task.Factory.StartNew(async () =>
// //{
// // await _serviceTDengine.ExecuteQuerySQL(conn, sql);
// //});

_serviceTDengine.ExecuteQuerySQL(conn, sql);
// _serviceTDengine.ExecuteQuerySQL(conn, sql);



//var res= await _serviceAliIot.QueryDeviceStatisticseAsync(nameof(Get));
//var online = res?.OnlineCount;
return Ok("aa");
// //var res= await _serviceAliIot.QueryDeviceStatisticseAsync(nameof(Get));
// //var online = res?.OnlineCount;
// return Ok("aa");

}
//}
}
}

+ 17
- 1
HealthMonitor.WebApi/Dockerfile ファイルの表示

@@ -8,10 +8,26 @@ RUN sed -i s@/deb.debian.org/@/mirrors.aliyun.com/@g /etc/apt/sources.list
RUN sed -i s@/security.debian.org/@/mirrors.aliyun.com/@g /etc/apt/sources.list

RUN apt-get update --fix-missing\
&& DEBIAN_FRONTEND=noninteractive apt-get install -y net-tools vim \
&& DEBIAN_FRONTEND=noninteractive apt-get install -y net-tools vim wget curl tar\
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*

# 安装 TDengine 客户端
RUN curl -o /tmp/TDengine-client-3.0.4.2-Linux-x64.tar.gz https://www.taosdata.com/assets-download/3.0/TDengine-client-3.0.4.2-Linux-x64.tar.gz

WORKDIR /tmp

# 解压
RUN tar xvf TDengine-client-3.0.4.2-Linux-x64.tar.gz
RUN ls
# 切换文件夹
WORKDIR /tmp/TDengine-client-3.0.4.2
RUN ls
# 执行安装脚本
RUN bash install_client.sh
# 设置 TDengine 服务器的 End Point
RUN echo "firstEp 47.116.142.20:6030" >> /etc/taos/taos.cfg

FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build
WORKDIR /src
COPY ["nuget.config","."]


+ 1
- 1
HealthMonitor.WebApi/PackageProcess.cs ファイルの表示

@@ -34,7 +34,7 @@ namespace HealthMonitor.WebApi
{

Console.WriteLine(ex.Message);
//_logger.LogError($"[{msg.MessageId}] 未处理异常 message: {ex.Message}\n {ex.StackTrace}");
_logger.LogError($"未处理异常 message: {ex.Message}\n {ex.StackTrace}");
}

return true;


+ 4
- 1
HealthMonitor.WebApi/Worker.cs ファイルの表示

@@ -50,9 +50,10 @@ namespace HealthMonitor.WebApi
if (_tokenSource.IsCancellationRequested)
_logger.LogWarning("Worker exit");

_logger.LogInformation("------ResolveAsync");
while (!_tokenSource.IsCancellationRequested)
{
//
await _processor.ResolveAsync().ConfigureAwait(false);
// await _tdEngineDataSubcribe.ProcessMsg();
}
@@ -61,8 +62,10 @@ namespace HealthMonitor.WebApi

factory.StartNew(() =>
{
_logger.LogInformation("------_tdEngineDataSubcribe");
while (!_tokenSource.IsCancellationRequested)
{
_tdEngineDataSubcribe.BeginListen(_tokenSource.Token);
}
}, TaskCreationOptions.LongRunning);


読み込み中…
キャンセル
保存