Commit 97557a7c by mahaisong

fix:搭建好2个调度程序框架、梳理console的最大行数、颜色区分。加入quartz、日志组件

parent ec23c43a
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
......@@ -91,6 +91,7 @@
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
<None Include="ReadMe.md" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
......
MinderESCommon 目的是指向Minder机器的ES。
MinderESCommon 目的是指向Minder机器的ES。
内部引用了Palas.Common, 但是,只用了里面的ItemModel。
要求:不能使用Palas.Common 的ES相关类和方法。
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
<sectionGroup name="common">
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
</sectionGroup>
</configSections>
<common>
<logging>
<factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, Common.Logging.Log4Net208">
<!--FILE
FILE-WATCH log4net节点在其他独立文件内部。
INLINE log4net节点在配置app.config内部。
EXTERNAL-->
<arg key="configType" value="FILE-WATCH" />
<arg key="configFile" value="~/Config/log4net.config" />
</factoryAdapter>
</logging>
</common>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Common.Logging.Core" publicKeyToken="af08829b84f0328e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.4.1.0" newVersion="3.4.1.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Common.Logging" publicKeyToken="af08829b84f0328e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.4.1.0" newVersion="3.4.1.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8" ?>
<log4net>
<appender name="errorAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="ERROR" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\err.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="infoAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\info.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="debugAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="DEBUG" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\debug.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="perfAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\perf.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %logger - %message%newline" />
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="errorAppender" />
<appender-ref ref="infoAppender" />
<appender-ref ref="debugAppender" />
</root>
<logger name="Performance" additivity="false">
<level value="ALL" />
<appender-ref ref="perfAppender" />
</logger>
</log4net>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8" ?>
<log4net>
<appender name="errorAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="ERROR" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<File value="Logs/err.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="infoAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs/info.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="debugAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="DEBUG" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs/debug.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="perfAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs/perf.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %logger - %message%newline" />
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="errorAppender" />
<appender-ref ref="infoAppender" />
<appender-ref ref="debugAppender" />
</root>
<logger name="Performance" additivity="false">
<level value="ALL" />
<appender-ref ref="perfAppender" />
</logger>
</log4net>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
......@@ -11,6 +11,21 @@
<AssemblyName>MinderESFromBeigeOracle</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<PublishUrl>publish\</PublishUrl>
<Install>true</Install>
<InstallFrom>Disk</InstallFrom>
<UpdateEnabled>false</UpdateEnabled>
<UpdateMode>Foreground</UpdateMode>
<UpdateInterval>7</UpdateInterval>
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
<UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions>
<ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<IsWebBootstrapper>false</IsWebBootstrapper>
<UseApplicationTrust>false</UseApplicationTrust>
<BootstrapperEnabled>true</BootstrapperEnabled>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
......@@ -32,6 +47,29 @@
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="Common.Logging, Version=3.4.1.0, Culture=neutral, PublicKeyToken=af08829b84f0328e, processorArchitecture=MSIL">
<HintPath>..\packages\Common.Logging.3.4.1\lib\net40\Common.Logging.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Common.Logging.Core, Version=3.4.1.0, Culture=neutral, PublicKeyToken=af08829b84f0328e, processorArchitecture=MSIL">
<HintPath>..\packages\Common.Logging.Core.3.4.1\lib\net40\Common.Logging.Core.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Common.Logging.Log4Net208, Version=3.4.1.0, Culture=neutral, PublicKeyToken=af08829b84f0328e, processorArchitecture=MSIL">
<HintPath>..\packages\Common.Logging.Log4Net208.3.4.1\lib\net40\Common.Logging.Log4Net208.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="log4net, Version=2.0.8.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
<HintPath>..\packages\log4net.2.0.8\lib\net45-full\log4net.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Quartz, Version=2.6.0.0, Culture=neutral, PublicKeyToken=f6b8c98a402cc8a4, processorArchitecture=MSIL">
<HintPath>..\packages\Quartz.2.6.0\lib\net40\Quartz.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="SocketCommonUtil">
<HintPath>..\include\SocketCommonUtil.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
......@@ -44,10 +82,43 @@
<ItemGroup>
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="QuartzJobs\TestJob.cs" />
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
<None Include="ReadMe.md" />
<None Include="Config\log4net.config">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="Config\log4net.unix.config">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="job_scheduling_data_2_0.xsd">
<SubType>Designer</SubType>
</None>
<None Include="packages.config" />
<None Include="quartz.config">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="ReadMe.md">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>
<ItemGroup>
<Content Include="quartz_jobs.xml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include=".NETFramework,Version=v4.5">
<Visible>False</Visible>
<ProductName>Microsoft .NET Framework 4.5 %28x86 和 x64%29</ProductName>
<Install>true</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1</ProductName>
<Install>false</Install>
</BootstrapperPackage>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
......
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<PublishUrlHistory>publish\</PublishUrlHistory>
<InstallUrlHistory />
<SupportUrlHistory />
<UpdateUrlHistory />
<BootstrapperUrlHistory />
<ErrorReportUrlHistory />
<FallbackCulture>zh-CN</FallbackCulture>
<VerifyUploadedFiles>false</VerifyUploadedFiles>
<ProjectView>ShowAllFiles</ProjectView>
</PropertyGroup>
</Project>
\ No newline at end of file
using System;
using Quartz;
using System;
using Quartz;
using Quartz.Impl;
using SocketCommonUtil;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
......@@ -8,8 +11,105 @@ namespace MinderESFromBeigeOracle
{
class Program
{
private static IScheduler scheduler;
private static string wstr = "";
static void Main(string[] args)
{
try
{
Console.Title = "BeigeOracle数据定时插入Minder机器ES";//设置窗口标题
Console.WindowWidth = 120;//一屏幕宽120个字,多了换行
Console.WindowHeight = 34;//一屏幕最多34行,多了就滚动
Console.BufferWidth = 120; //一行内容120个字,多了换行。 如果BufferWidth比WindowWidth大,则代表可以水平向后滚动
Console.BufferHeight = 9999; //最大高度
Console.BackgroundColor = ConsoleColor.DarkYellow; //设置背景色 黄
//开启quartz
wstr = DateTimeTool.ConvertDataTimeToString(DateTime.Now) + ": 1.程序启动";
Console.WriteLine(wstr);
LogService.WriteInfo(wstr);
scheduler = StdSchedulerFactory.GetDefaultScheduler();
scheduler.Start();
wstr = DateTimeTool.ConvertDataTimeToString(DateTime.Now) + ": 2.定时任务启动--------若要关闭本程序,请输入exit!";
Console.WriteLine(wstr);
LogService.WriteInfo(wstr);
Console.WriteLine(DateTimeTool.ConvertDataTimeToString(DateTime.Now) + ": 2.1定时任务执行日志,请观察debug.log文件");
throw new Exception();
}
catch (Exception ex)
{
Console.BackgroundColor = ConsoleColor.Red;
Console.ForegroundColor = ConsoleColor.Cyan;
wstr = DateTimeTool.ConvertDataTimeToString(DateTime.Now) + ": 启动失败,定时任务自动停止!!!错误如下:" + ex.ToString();
Console.WriteLine(wstr);
LogService.WriteInfo(wstr);
try
{
//quartz 停止
scheduler.Shutdown();
}
catch { }
Console.BackgroundColor = ConsoleColor.DarkYellow; //设置默认背景色
Console.ForegroundColor = ConsoleColor.Gray; //设置默认背景色
}
finally
{
while (true)
{
string key = Console.ReadLine();
if (key.Trim().ToUpper().Equals("EXIT"))
{
//quartz 停止
scheduler.Shutdown();
break;
}
}
Console.WriteLine("3.程序关闭!");
}
}
//显示出console中支持的背景色及前景色
//ShowColor(); //人工挑选1个需要的文本、背景颜色
//Console.ResetColor(); //将控制台的前景色和背景色设为默认值
//Console.BackgroundColor = ConsoleColor.Blue; //设置背景色 蓝
//Console.ForegroundColor = ConsoleColor.White; //设置前景色,即字体颜色 白
static void ShowColor()
{
Type type = typeof(ConsoleColor);
Console.ForegroundColor = ConsoleColor.White;
foreach (string name in Enum.GetNames(type))
{
Console.BackgroundColor = (ConsoleColor)Enum.Parse(type, name);
Console.WriteLine(name);
}
Console.BackgroundColor = ConsoleColor.Black;
foreach (string name in Enum.GetNames(type))
{
Console.ForegroundColor = (ConsoleColor)Enum.Parse(type, name);
Console.WriteLine(name);
}
foreach (string bc in Enum.GetNames(type))
{
Console.BackgroundColor = (ConsoleColor)Enum.Parse(type, bc);
foreach (string fc in Enum.GetNames(type))
{
Console.ForegroundColor = (ConsoleColor)Enum.Parse(type, fc);
Console.WriteLine("bc=" + bc + ",fc=" + fc);
}
Console.WriteLine();
}
}
}
}


using Quartz;
using SocketCommonUtil;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MinderESFromBeigeOracle.QuartzJobs
{
public class TestJob : IJob
{
public void Execute(IJobExecutionContext context)
{
try
{
LogService.WriteInfo("test");
}
catch (Exception ex)
{
throw;
}
}
}
}
This source diff could not be displayed because it is too large. You can view the blob instead.
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8" ?>
<log4net>
<appender name="errorAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="ERROR" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\err.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="infoAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\info.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="debugAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="DEBUG" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\debug.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="perfAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\perf.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %logger - %message%newline" />
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="errorAppender" />
<appender-ref ref="infoAppender" />
<appender-ref ref="debugAppender" />
</root>
<logger name="Performance" additivity="false">
<level value="ALL" />
<appender-ref ref="perfAppender" />
</logger>
</log4net>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8" ?>
<log4net>
<appender name="errorAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="ERROR" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<File value="Logs/err.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="infoAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs/info.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="debugAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="DEBUG" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs/debug.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="perfAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs/perf.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %logger - %message%newline" />
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="errorAppender" />
<appender-ref ref="infoAppender" />
<appender-ref ref="debugAppender" />
</root>
<logger name="Performance" additivity="false">
<level value="ALL" />
<appender-ref ref="perfAppender" />
</logger>
</log4net>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
<sectionGroup name="common">
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
</sectionGroup>
</configSections>
<common>
<logging>
<factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, Common.Logging.Log4Net208">
<!--FILE
FILE-WATCH log4net节点在其他独立文件内部。
INLINE log4net节点在配置app.config内部。
EXTERNAL-->
<arg key="configType" value="FILE-WATCH" />
<arg key="configFile" value="~/Config/log4net.config" />
</factoryAdapter>
</logging>
</common>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Common.Logging.Core" publicKeyToken="af08829b84f0328e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.4.1.0" newVersion="3.4.1.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Common.Logging" publicKeyToken="af08829b84f0328e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.4.1.0" newVersion="3.4.1.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
<sectionGroup name="common">
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
</sectionGroup>
</configSections>
<common>
<logging>
<factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, Common.Logging.Log4Net208">
<!--FILE
FILE-WATCH log4net节点在其他独立文件内部。
INLINE log4net节点在配置app.config内部。
EXTERNAL-->
<arg key="configType" value="FILE-WATCH" />
<arg key="configFile" value="~/Config/log4net.config" />
</factoryAdapter>
</logging>
</common>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Common.Logging.Core" publicKeyToken="af08829b84f0328e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.4.1.0" newVersion="3.4.1.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Common.Logging" publicKeyToken="af08829b84f0328e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.4.1.0" newVersion="3.4.1.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<requestedExecutionLevel level="asInvoker" uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
MinderESFromBeigeOracle
MinderESFromBeigeOracle
1.从beige的Oracle数据库中根据最后一次的ID向后查找所有数据,导入ES中。
周期性在自己程序上实现,别的程序负责看守。
设计思路:
1.在mysql数据库(minder.palas_v5.syncoffset )中存储HuaJinNews_Beige记录最后的last_itemid。
This source diff could not be displayed because it is too large. You can view the blob instead.
 # You can configure your scheduler in either <quartz> configuration section
 # You can configure your scheduler in either <quartz> configuration section
# or in quartz properties file
# Configuration section has precedence
quartz.scheduler.instanceName = QuartzTest
# configure thread pool info
quartz.threadPool.type = Quartz.Simpl.SimpleThreadPool, Quartz
quartz.threadPool.threadCount = 10
quartz.threadPool.threadPriority = Normal
# job initialization plugin handles our xml reading, without it defaults are used
quartz.plugin.xml.type = Quartz.Plugin.Xml.XMLSchedulingDataProcessorPlugin, Quartz
quartz.plugin.xml.fileNames = ~/quartz_jobs.xml
# export this server to remoting context
#quartz.scheduler.exporter.type = Quartz.Simpl.RemotingSchedulerExporter, Quartz
#quartz.scheduler.exporter.port = 555
#quartz.scheduler.exporter.bindName = QuartzScheduler
#quartz.scheduler.exporter.channelType = tcp
#quartz.scheduler.exporter.channelName = httpQuartz
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!-- This file contains job definitions in schema version 2.0 format -->
<job-scheduling-data xmlns="http://quartznet.sourceforge.net/JobSchedulingData" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.0">
<processing-directives>
<overwrite-existing-data>true</overwrite-existing-data>
</processing-directives>
<schedule>
<!--begin-每5秒钟执行一次-检查心跳状态-->
<job>
<name>Cycle_NoHeart</name>
<group>Test</group>
<description>每5秒钟执行一次-检查心跳状态</description>
<job-type>MinderESFromBeigeOracle.QuartzJobs.TestJob,MinderESFromBeigeOracle</job-type>
<durable>true</durable>
<recover>false</recover>
</job>
<trigger>
<cron>
<name>Cycle_NoHeartTrigger</name>
<group>Test</group>
<job-name>Cycle_NoHeart</job-name>
<job-group>Test</job-group>
<start-time>2015-01-22T00:00:00+08:00</start-time>
<cron-expression>0/1 * * * * ? </cron-expression>
</cron>
</trigger>
<!--end-每5秒钟执行一次-检查心跳状态-->
</schedule>
</job-scheduling-data>
\ No newline at end of file
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\MinderESFromBeigeOracle.exe.config
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\quartz_jobs.xml
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\quartz_jobs.xml
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\Config\log4net.config
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\Config\log4net.unix.config
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\quartz.config
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\ReadMe.md
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\MinderESFromBeigeOracle.exe.config
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\MinderESFromBeigeOracle.exe
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\MinderESFromBeigeOracle.pdb
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\obj\Debug\MinderESFromBeigeOracle.csprojResolveAssemblyReference.cache
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\Common.Logging.Core.dll
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\Common.Logging.dll
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\Common.Logging.Log4Net208.dll
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\log4net.dll
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\Quartz.dll
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\SocketCommonUtil.dll
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\Newtonsoft.Json.dll
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\Common.Logging.pdb
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\Common.Logging.xml
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\Common.Logging.Core.pdb
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\Common.Logging.Core.xml
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\Common.Logging.Log4Net208.pdb
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\Common.Logging.Log4Net208.xml
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\log4net.xml
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\Quartz.pdb
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\Quartz.xml
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\SocketCommonUtil.pdb
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\bin\Debug\Newtonsoft.Json.xml
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\obj\Debug\MinderESFromBeigeOracle.exe
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromBeigeOracle\obj\Debug\MinderESFromBeigeOracle.pdb
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Common.Logging" version="3.4.1" targetFramework="net45" />
<package id="Common.Logging.Core" version="3.4.1" targetFramework="net45" />
<package id="Common.Logging.Log4Net208" version="3.4.1" targetFramework="net45" />
<package id="log4net" version="2.0.8" targetFramework="net45" />
<package id="Microsoft.CSharp" version="4.0.1" targetFramework="net45" />
<package id="Quartz" version="2.6.0" targetFramework="net45" />
</packages>
\ No newline at end of file
 # You can configure your scheduler in either <quartz> configuration section
 # You can configure your scheduler in either <quartz> configuration section
# or in quartz properties file
# Configuration section has precedence
quartz.scheduler.instanceName = QuartzTest
# configure thread pool info
quartz.threadPool.type = Quartz.Simpl.SimpleThreadPool, Quartz
quartz.threadPool.threadCount = 10
quartz.threadPool.threadPriority = Normal
# job initialization plugin handles our xml reading, without it defaults are used
quartz.plugin.xml.type = Quartz.Plugin.Xml.XMLSchedulingDataProcessorPlugin, Quartz
quartz.plugin.xml.fileNames = ~/quartz_jobs.xml
# export this server to remoting context
#quartz.scheduler.exporter.type = Quartz.Simpl.RemotingSchedulerExporter, Quartz
#quartz.scheduler.exporter.port = 555
#quartz.scheduler.exporter.bindName = QuartzScheduler
#quartz.scheduler.exporter.channelType = tcp
#quartz.scheduler.exporter.channelName = httpQuartz
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!-- This file contains job definitions in schema version 2.0 format -->
<job-scheduling-data xmlns="http://quartznet.sourceforge.net/JobSchedulingData" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.0">
<processing-directives>
<overwrite-existing-data>true</overwrite-existing-data>
</processing-directives>
<schedule>
<!--begin-每5秒钟执行一次-检查心跳状态-->
<job>
<name>Cycle_NoHeart</name>
<group>Test</group>
<description>每5秒钟执行一次-检查心跳状态</description>
<job-type>MinderESFromBeigeOracle.QuartzJobs.TestJob,MinderESFromBeigeOracle</job-type>
<durable>true</durable>
<recover>false</recover>
</job>
<trigger>
<cron>
<name>Cycle_NoHeartTrigger</name>
<group>Test</group>
<job-name>Cycle_NoHeart</job-name>
<job-group>Test</job-group>
<start-time>2015-01-22T00:00:00+08:00</start-time>
<cron-expression>0/1 * * * * ? </cron-expression>
</cron>
</trigger>
<!--end-每5秒钟执行一次-检查心跳状态-->
</schedule>
</job-scheduling-data>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
<sectionGroup name="common">
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
</sectionGroup>
</configSections>
<common>
<logging>
<factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, Common.Logging.Log4Net208">
<!--FILE
FILE-WATCH log4net节点在其他独立文件内部。
INLINE log4net节点在配置app.config内部。
EXTERNAL-->
<arg key="configType" value="FILE-WATCH" />
<arg key="configFile" value="~/Config/log4net.config" />
</factoryAdapter>
</logging>
</common>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Common.Logging.Core" publicKeyToken="af08829b84f0328e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.4.1.0" newVersion="3.4.1.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Common.Logging" publicKeyToken="af08829b84f0328e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.4.1.0" newVersion="3.4.1.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8" ?>
<log4net>
<appender name="errorAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="ERROR" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\err.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="infoAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\info.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="debugAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="DEBUG" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\debug.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="perfAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\perf.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %logger - %message%newline" />
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="errorAppender" />
<appender-ref ref="infoAppender" />
<appender-ref ref="debugAppender" />
</root>
<logger name="Performance" additivity="false">
<level value="ALL" />
<appender-ref ref="perfAppender" />
</logger>
</log4net>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8" ?>
<log4net>
<appender name="errorAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="ERROR" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<File value="Logs/err.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="infoAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs/info.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="debugAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="DEBUG" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs/debug.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="perfAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs/perf.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %logger - %message%newline" />
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="errorAppender" />
<appender-ref ref="infoAppender" />
<appender-ref ref="debugAppender" />
</root>
<logger name="Performance" additivity="false">
<level value="ALL" />
<appender-ref ref="perfAppender" />
</logger>
</log4net>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
......@@ -9,8 +9,9 @@
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>MinderESFromTaikorES</RootNamespace>
<AssemblyName>MinderESFromTaikorES</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
......@@ -32,8 +33,33 @@
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="Common.Logging, Version=3.4.1.0, Culture=neutral, PublicKeyToken=af08829b84f0328e, processorArchitecture=MSIL">
<HintPath>..\packages\Common.Logging.3.4.1\lib\net40\Common.Logging.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Common.Logging.Core, Version=3.4.1.0, Culture=neutral, PublicKeyToken=af08829b84f0328e, processorArchitecture=MSIL">
<HintPath>..\packages\Common.Logging.Core.3.4.1\lib\net40\Common.Logging.Core.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Common.Logging.Log4Net208, Version=3.4.1.0, Culture=neutral, PublicKeyToken=af08829b84f0328e, processorArchitecture=MSIL">
<HintPath>..\packages\Common.Logging.Log4Net208.3.4.1\lib\net40\Common.Logging.Log4Net208.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="log4net, Version=2.0.8.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
<HintPath>..\packages\log4net.2.0.8\lib\net45-full\log4net.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Quartz, Version=2.6.0.0, Culture=neutral, PublicKeyToken=f6b8c98a402cc8a4, processorArchitecture=MSIL">
<HintPath>..\packages\Quartz.2.6.0\lib\net40\Quartz.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="SocketCommonUtil">
<HintPath>..\include\SocketCommonUtil.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Configuration" />
<Reference Include="System.Core" />
<Reference Include="System.Runtime.Remoting" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
......@@ -44,11 +70,30 @@
<ItemGroup>
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="QuartzJobs\TestJob.cs" />
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
<None Include="Config\log4net.config">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="Config\log4net.unix.config">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="job_scheduling_data_2_0.xsd">
<SubType>Designer</SubType>
</None>
<None Include="packages.config" />
<None Include="quartz.config">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="ReadMe.md" />
</ItemGroup>
<ItemGroup>
<Content Include="quartz_jobs.xml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
......
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectView>ShowAllFiles</ProjectView>
</PropertyGroup>
</Project>
\ No newline at end of file
using System;
using Quartz;
using System;
using Quartz;
using Quartz.Impl;
using SocketCommonUtil;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
......@@ -8,8 +11,110 @@ namespace MinderESFromTaikorES
{
class Program
{
private static IScheduler scheduler;
private static string wstr = "";
static void Main(string[] args)
{
try
{
Console.Title = "Taikor生产环境ES数据定时插入Minder机器ES";//设置窗口标题
Console.WindowWidth = 120;//一屏幕宽120个字,多了换行
Console.WindowHeight = 34;//一屏幕最多34行,多了就滚动
Console.BufferWidth = 120; //一行内容120个字,多了换行。 如果BufferWidth比WindowWidth大,则代表可以水平向后滚动
Console.BufferHeight = 9999; //最大高度
Console.BackgroundColor = ConsoleColor.DarkGreen; //设置背景色 蓝
//开启quartz
wstr = DateTimeTool.ConvertDataTimeToString(DateTime.Now) + ": 1.程序启动";
Console.WriteLine(wstr);
LogService.WriteInfo(wstr);
scheduler = StdSchedulerFactory.GetDefaultScheduler();
scheduler.Start();
wstr = DateTimeTool.ConvertDataTimeToString(DateTime.Now) + ": 2.定时任务启动--------若要关闭本程序,请输入exit!";
Console.WriteLine(wstr);
LogService.WriteInfo(wstr);
Console.WriteLine(DateTimeTool.ConvertDataTimeToString(DateTime.Now) + ": 2.1定时任务执行日志,请观察debug.log文件");
throw new Exception();
}
catch (Exception ex)
{
Console.BackgroundColor = ConsoleColor.Red;
Console.ForegroundColor = ConsoleColor.Cyan;
wstr = DateTimeTool.ConvertDataTimeToString(DateTime.Now) + ": 启动失败,定时任务自动停止!!!错误如下:" + ex.ToString();
Console.WriteLine(wstr);
LogService.WriteInfo(wstr);
try
{
//quartz 停止
scheduler.Shutdown();
}
catch { }
Console.BackgroundColor = ConsoleColor.DarkGreen; //设置默认背景色
Console.ForegroundColor = ConsoleColor.Gray; //设置默认背景色
}
finally
{
while (true)
{
string key = Console.ReadLine();
if (key.Trim().ToUpper().Equals("EXIT"))
{
//quartz 停止
scheduler.Shutdown();
break;
}
}
Console.WriteLine("3.程序关闭!");
}
}
//显示出console中支持的背景色及前景色
//ShowColor(); //人工挑选1个需要的文本、背景颜色
//Console.ResetColor(); //将控制台的前景色和背景色设为默认值
//Console.BackgroundColor = ConsoleColor.Blue; //设置背景色 蓝
//Console.ForegroundColor = ConsoleColor.White; //设置前景色,即字体颜色 白
static void ShowColor()
{
Type type = typeof(ConsoleColor);
Console.ForegroundColor = ConsoleColor.White;
foreach (string name in Enum.GetNames(type))
{
Console.BackgroundColor = (ConsoleColor)Enum.Parse(type, name);
Console.WriteLine(name);
}
Console.BackgroundColor = ConsoleColor.Black;
foreach (string name in Enum.GetNames(type))
{
Console.ForegroundColor = (ConsoleColor)Enum.Parse(type, name);
Console.WriteLine(name);
}
foreach (string bc in Enum.GetNames(type))
{
Console.BackgroundColor = (ConsoleColor)Enum.Parse(type, bc);
foreach (string fc in Enum.GetNames(type))
{
Console.ForegroundColor = (ConsoleColor)Enum.Parse(type, fc);
Console.WriteLine("bc=" + bc + ",fc=" + fc);
}
Console.WriteLine();
}
}
}
}


using Quartz;
using SocketCommonUtil;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MinderESFromTaikorES.QuartzJobs
{
public class TestJob : IJob
{
public void Execute(IJobExecutionContext context)
{
try
{
LogService.WriteInfo("test");
}
catch (Exception ex)
{
throw;
}
}
}
}
This source diff could not be displayed because it is too large. You can view the blob instead.
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8" ?>
<log4net>
<appender name="errorAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="ERROR" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\err.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="infoAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\info.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="debugAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="DEBUG" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\debug.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="perfAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs\perf.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %logger - %message%newline" />
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="errorAppender" />
<appender-ref ref="infoAppender" />
<appender-ref ref="debugAppender" />
</root>
<logger name="Performance" additivity="false">
<level value="ALL" />
<appender-ref ref="perfAppender" />
</logger>
</log4net>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8" ?>
<log4net>
<appender name="errorAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="ERROR" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<File value="Logs/err.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="infoAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs/info.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="debugAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="DEBUG" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs/debug.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<appender name="perfAppender" type="log4net.Appender.RollingFileAppender">
<filter type="log4net.Filter.LevelMatchFilter">
<levelToMatch value="INFO" />
</filter>
<filter type="log4net.Filter.DenyAllFilter" />
<file value="Logs/perf.log" />
<encoding value="utf-8"/>
<preserveLogFileNameExtension value="true" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %logger - %message%newline" />
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="errorAppender" />
<appender-ref ref="infoAppender" />
<appender-ref ref="debugAppender" />
</root>
<logger name="Performance" additivity="false">
<level value="ALL" />
<appender-ref ref="perfAppender" />
</logger>
</log4net>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
<sectionGroup name="common">
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
</sectionGroup>
</configSections>
<common>
<logging>
<factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, Common.Logging.Log4Net208">
<!--FILE
FILE-WATCH log4net节点在其他独立文件内部。
INLINE log4net节点在配置app.config内部。
EXTERNAL-->
<arg key="configType" value="FILE-WATCH" />
<arg key="configFile" value="~/Config/log4net.config" />
</factoryAdapter>
</logging>
</common>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Common.Logging.Core" publicKeyToken="af08829b84f0328e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.4.1.0" newVersion="3.4.1.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Common.Logging" publicKeyToken="af08829b84f0328e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.4.1.0" newVersion="3.4.1.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
<sectionGroup name="common">
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
</sectionGroup>
</configSections>
<common>
<logging>
<factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, Common.Logging.Log4Net208">
<!--FILE
FILE-WATCH log4net节点在其他独立文件内部。
INLINE log4net节点在配置app.config内部。
EXTERNAL-->
<arg key="configType" value="FILE-WATCH" />
<arg key="configFile" value="~/Config/log4net.config" />
</factoryAdapter>
</logging>
</common>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Common.Logging.Core" publicKeyToken="af08829b84f0328e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.4.1.0" newVersion="3.4.1.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Common.Logging" publicKeyToken="af08829b84f0328e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.4.1.0" newVersion="3.4.1.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
 # You can configure your scheduler in either <quartz> configuration section
 # You can configure your scheduler in either <quartz> configuration section
# or in quartz properties file
# Configuration section has precedence
quartz.scheduler.instanceName = QuartzTest
# configure thread pool info
quartz.threadPool.type = Quartz.Simpl.SimpleThreadPool, Quartz
quartz.threadPool.threadCount = 10
quartz.threadPool.threadPriority = Normal
# job initialization plugin handles our xml reading, without it defaults are used
quartz.plugin.xml.type = Quartz.Plugin.Xml.XMLSchedulingDataProcessorPlugin, Quartz
quartz.plugin.xml.fileNames = ~/quartz_jobs.xml
# export this server to remoting context
#quartz.scheduler.exporter.type = Quartz.Simpl.RemotingSchedulerExporter, Quartz
#quartz.scheduler.exporter.port = 555
#quartz.scheduler.exporter.bindName = QuartzScheduler
#quartz.scheduler.exporter.channelType = tcp
#quartz.scheduler.exporter.channelName = httpQuartz
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!-- This file contains job definitions in schema version 2.0 format -->
<job-scheduling-data xmlns="http://quartznet.sourceforge.net/JobSchedulingData" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.0">
<processing-directives>
<overwrite-existing-data>true</overwrite-existing-data>
</processing-directives>
<schedule>
<!--begin-每5秒钟执行一次-检查心跳状态-->
<job>
<name>Cycle_NoHeart</name>
<group>Test</group>
<description>每5秒钟执行一次-检查心跳状态</description>
<job-type>MinderESFromTaikorES.QuartzJobs.TestJob,MinderESFromTaikorES</job-type>
<durable>true</durable>
<recover>false</recover>
</job>
<trigger>
<cron>
<name>Cycle_NoHeartTrigger</name>
<group>Test</group>
<job-name>Cycle_NoHeart</job-name>
<job-group>Test</job-group>
<start-time>2015-01-22T00:00:00+08:00</start-time>
<cron-expression>0/1 * * * * ? </cron-expression>
</cron>
</trigger>
<!--end-每5秒钟执行一次-检查心跳状态-->
</schedule>
</job-scheduling-data>
\ No newline at end of file
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\MinderESFromTaikorES.exe.config
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\MinderESFromTaikorES.exe.config
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\MinderESFromTaikorES.exe.config
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\MinderESFromTaikorES.exe
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\MinderESFromTaikorES.pdb
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\obj\Debug\MinderESFromTaikorES.csprojResolveAssemblyReference.cache
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\obj\Debug\MinderESFromTaikorES.exe
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\obj\Debug\MinderESFromTaikorES.pdb
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\quartz_jobs.xml
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\Config\log4net.config
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\Config\log4net.unix.config
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\quartz.config
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\Common.Logging.Core.dll
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\Common.Logging.dll
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\Common.Logging.Log4Net208.dll
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\log4net.dll
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\Quartz.dll
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\SocketCommonUtil.dll
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\Newtonsoft.Json.dll
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\Common.Logging.pdb
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\Common.Logging.xml
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\Common.Logging.Core.pdb
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\Common.Logging.Core.xml
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\Common.Logging.Log4Net208.pdb
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\Common.Logging.Log4Net208.xml
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\log4net.xml
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\Quartz.pdb
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\Quartz.xml
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\SocketCommonUtil.pdb
D:\smallproject\10.Paul需求-JSON贝格ES导入本地ES\MinderES\MinderESFromTaikorES\bin\Debug\Newtonsoft.Json.xml
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment