diff --git a/ScheMe-SP.sln b/ScheMe-SP.sln index 07bf7c5..219029d 100644 --- a/ScheMe-SP.sln +++ b/ScheMe-SP.sln @@ -1,14 +1,12 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 15 -VisualStudioVersion = 15.0.27130.2026 +# Visual Studio Version 17 +VisualStudioVersion = 17.1.32228.430 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ScheMe-SP", "ScheMe-SP\ScheMe-SP.csproj", "{CA8C6074-8561-47E1-86C7-E941AAFB2CDC}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ScheMe_Data", "ScheMe_Data\ScheMe_Data.csproj", "{234E6827-B79C-435D-92E3-E81A3825D120}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SteamWare", "..\Steamware\SteamWareLib\SteamWare.csproj", "{2872DCFE-8B46-43B2-BAA0-842A816A2DD5}" -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VersGen", "VersGen\VersGen.csproj", "{7C587950-A570-489C-9784-27256384E57E}" EndProject Global @@ -55,22 +53,6 @@ Global {234E6827-B79C-435D-92E3-E81A3825D120}.IIS02|Any CPU.Build.0 = IIS02|Any CPU {234E6827-B79C-435D-92E3-E81A3825D120}.Release|Any CPU.ActiveCfg = Release|Any CPU {234E6827-B79C-435D-92E3-E81A3825D120}.Release|Any CPU.Build.0 = Release|Any CPU - {2872DCFE-8B46-43B2-BAA0-842A816A2DD5}.AlumatTest|Any CPU.ActiveCfg = Release|Any CPU - {2872DCFE-8B46-43B2-BAA0-842A816A2DD5}.AlumatTest|Any CPU.Build.0 = Release|Any CPU - {2872DCFE-8B46-43B2-BAA0-842A816A2DD5}.CUSBG|Any CPU.ActiveCfg = Release|Any CPU - {2872DCFE-8B46-43B2-BAA0-842A816A2DD5}.CUSBG|Any CPU.Build.0 = Release|Any CPU - {2872DCFE-8B46-43B2-BAA0-842A816A2DD5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {2872DCFE-8B46-43B2-BAA0-842A816A2DD5}.Debug|Any CPU.Build.0 = Debug|Any CPU - {2872DCFE-8B46-43B2-BAA0-842A816A2DD5}.IIS01_SP|Any CPU.ActiveCfg = Release|Any CPU - {2872DCFE-8B46-43B2-BAA0-842A816A2DD5}.IIS01_SP|Any CPU.Build.0 = Release|Any CPU - {2872DCFE-8B46-43B2-BAA0-842A816A2DD5}.IIS01_TK|Any CPU.ActiveCfg = Release|Any CPU - {2872DCFE-8B46-43B2-BAA0-842A816A2DD5}.IIS01_TK|Any CPU.Build.0 = Release|Any CPU - {2872DCFE-8B46-43B2-BAA0-842A816A2DD5}.IIS01|Any CPU.ActiveCfg = Release|Any CPU - {2872DCFE-8B46-43B2-BAA0-842A816A2DD5}.IIS01|Any CPU.Build.0 = Release|Any CPU - {2872DCFE-8B46-43B2-BAA0-842A816A2DD5}.IIS02|Any CPU.ActiveCfg = Release|Any CPU - {2872DCFE-8B46-43B2-BAA0-842A816A2DD5}.IIS02|Any CPU.Build.0 = Release|Any CPU - {2872DCFE-8B46-43B2-BAA0-842A816A2DD5}.Release|Any CPU.ActiveCfg = Release|Any CPU - {2872DCFE-8B46-43B2-BAA0-842A816A2DD5}.Release|Any CPU.Build.0 = Release|Any CPU {7C587950-A570-489C-9784-27256384E57E}.AlumatTest|Any CPU.ActiveCfg = Release|Any CPU {7C587950-A570-489C-9784-27256384E57E}.AlumatTest|Any CPU.Build.0 = Release|Any CPU {7C587950-A570-489C-9784-27256384E57E}.CUSBG|Any CPU.ActiveCfg = Release|Any CPU diff --git a/ScheMe-SP/App_Readme/README_SteamWare.txt b/ScheMe-SP/App_Readme/README_SteamWare.txt new file mode 100644 index 0000000..5626502 --- /dev/null +++ b/ScheMe-SP/App_Readme/README_SteamWare.txt @@ -0,0 +1,12 @@ +--------------------------------------------------------------- +------- SteamWare SDK ------- +--------------------------------------------------------------- + +Libreria di utility base di SteamWare. + +Le dipendenze inserite sono necessarie al funzionamento dell'SDK. + +Sono inclusi a titolo di esempio vari files di conf: + * example-NLog.config + +Attenzione a configurare correttamente il file NLog.xml includendo il rule per la classe, vedere ad esempio il file example-NLog.config allegato. \ No newline at end of file diff --git a/ScheMe-SP/App_Readme/SteamWare_demo/example-NLog.config b/ScheMe-SP/App_Readme/SteamWare_demo/example-NLog.config new file mode 100644 index 0000000..3461e58 --- /dev/null +++ b/ScheMe-SP/App_Readme/SteamWare_demo/example-NLog.config @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ScheMe-SP/App_Readme/SteamWare_demo/example-app.config b/ScheMe-SP/App_Readme/SteamWare_demo/example-app.config new file mode 100644 index 0000000..fb42165 --- /dev/null +++ b/ScheMe-SP/App_Readme/SteamWare_demo/example-app.config @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/ScheMe-SP/App_Readme/SteamWare_demo/example-config-table.txt b/ScheMe-SP/App_Readme/SteamWare_demo/example-config-table.txt new file mode 100644 index 0000000..dd0ab8e --- /dev/null +++ b/ScheMe-SP/App_Readme/SteamWare_demo/example-config-table.txt @@ -0,0 +1,30 @@ +# chiave valore valoreStd note +_adminEmail samuele@steamware.net,info@steamware.net samuele@steamware.net,info@steamware.net info@steamware.net +_allowForceUser true true abilita login forzato +_commonPages menu menu pagina comune +_emailPwd drmfsls16 drmfsls16 drmfsls16 +_emailUser steamwarebot@gmail.com steamwarebot@gmail.com steamwarebot@gmail.com +_enableSSL true true true +_fromEmail webmaster@admodelling.org webmaster@admodelling.org email mittente eventuali msg +_righeDataGrid 30 30 Num righe datagrid std +_righeDataGridAnagr 20 20 Num righe datagrid anagrafiche +_righeDataGridLong 30 30 Num righe datagrid long +_righeDataGridMed 15 15 Num righe datagrid med +_righeDataGridShort 10 10 Num righe datagrid short +_smtpCli smtp.gmail.com smtp.gmail.com smtp.gmail.com +_useAIMSmtp false false impiego client posta elettronica alternativo +_useAuthSmtp true true true +AuthCookieName admodellingAuth admodellingAuth Cookie applicativo +autoConfCmd true true Conferma automatica comandi barcode +baseUrl http://site_name http://iis02/site_name URL base del sito +cacheValSec 60 60 Validità cache dati in gestore Barcode +cookieDayExp 365 365 Periodo validità cookie +cookieUsed admodellingAuth admodellingAuth,CTrack_CodOpr,CTrack_CodPost Elenco dei cookie impiegati +enableCookie true true Abilitazione uso cookie +enableLogOut true false Abilita button logout COMPLETO in alto a sx +enablePlain true true Abilitazione decode plain +maxAuth 1000 1000 num auth minimo per NON consumare tokens +serializeSession true true Serializzazione valori in sessione (REDIS) +SiteName iis02/site_name iis02/site_name Nome sito +enableDumpDiag false false abilitazione dumb diagnostico x eccezioni di default +doShrinkFolder true true Imposta compressione area LOGS \ No newline at end of file diff --git a/ScheMe-SP/App_Readme/SteamWare_demo/example-favicon.ico b/ScheMe-SP/App_Readme/SteamWare_demo/example-favicon.ico new file mode 100644 index 0000000..4f0e0ad Binary files /dev/null and b/ScheMe-SP/App_Readme/SteamWare_demo/example-favicon.ico differ diff --git a/ScheMe-SP/Core/Compression/Snappy/lib/linux/libsnappy64.so b/ScheMe-SP/Core/Compression/Snappy/lib/linux/libsnappy64.so new file mode 100644 index 0000000..584bedf Binary files /dev/null and b/ScheMe-SP/Core/Compression/Snappy/lib/linux/libsnappy64.so differ diff --git a/ScheMe-SP/Core/Compression/Snappy/lib/osx/libsnappy64.dylib b/ScheMe-SP/Core/Compression/Snappy/lib/osx/libsnappy64.dylib new file mode 100644 index 0000000..bbce3c2 Binary files /dev/null and b/ScheMe-SP/Core/Compression/Snappy/lib/osx/libsnappy64.dylib differ diff --git a/ScheMe-SP/Core/Compression/Snappy/lib/win/snappy32.dll b/ScheMe-SP/Core/Compression/Snappy/lib/win/snappy32.dll new file mode 100644 index 0000000..afc82ca Binary files /dev/null and b/ScheMe-SP/Core/Compression/Snappy/lib/win/snappy32.dll differ diff --git a/ScheMe-SP/Core/Compression/Snappy/lib/win/snappy64.dll b/ScheMe-SP/Core/Compression/Snappy/lib/win/snappy64.dll new file mode 100644 index 0000000..36cd5fe Binary files /dev/null and b/ScheMe-SP/Core/Compression/Snappy/lib/win/snappy64.dll differ diff --git a/ScheMe-SP/Core/Compression/Zstandard/lib/linux/libzstd.so b/ScheMe-SP/Core/Compression/Zstandard/lib/linux/libzstd.so new file mode 100644 index 0000000..8309c49 Binary files /dev/null and b/ScheMe-SP/Core/Compression/Zstandard/lib/linux/libzstd.so differ diff --git a/ScheMe-SP/Core/Compression/Zstandard/lib/osx/libzstd.dylib b/ScheMe-SP/Core/Compression/Zstandard/lib/osx/libzstd.dylib new file mode 100644 index 0000000..5400d76 Binary files /dev/null and b/ScheMe-SP/Core/Compression/Zstandard/lib/osx/libzstd.dylib differ diff --git a/ScheMe-SP/Core/Compression/Zstandard/lib/win/libzstd.dll b/ScheMe-SP/Core/Compression/Zstandard/lib/win/libzstd.dll new file mode 100644 index 0000000..e669123 Binary files /dev/null and b/ScheMe-SP/Core/Compression/Zstandard/lib/win/libzstd.dll differ diff --git a/ScheMe-SP/ScheMe-SP.csproj b/ScheMe-SP/ScheMe-SP.csproj index eb41faa..02e7726 100644 --- a/ScheMe-SP/ScheMe-SP.csproj +++ b/ScheMe-SP/ScheMe-SP.csproj @@ -46,6 +46,12 @@ 4 + + ..\packages\AIM.1.0.3\lib\AegisImplicitMail.dll + + + ..\packages\AjaxControlToolkit.20.1.0\lib\net40\AjaxControlToolkit.dll + ..\packages\Antlr.3.5.0.2\lib\Antlr3.Runtime.dll True @@ -53,15 +59,27 @@ ..\packages\AspNet.ScriptManager.jQuery.3.3.1\lib\net45\AspNet.ScriptManager.jQuery.dll + + ..\packages\Crc32C.NET.1.0.5.0\lib\net20\Crc32C.NET.dll + + + ..\packages\DnsClient.1.6.0\lib\net45\DnsClient.dll + ..\packages\elmah.corelibrary.1.2.2\lib\Elmah.dll + + ..\packages\SharpZipLib.1.3.3\lib\net45\ICSharpCode.SharpZipLib.dll + ..\packages\Microsoft.AspNet.FriendlyUrls.Core.1.0.2\lib\net45\Microsoft.AspNet.FriendlyUrls.dll ..\packages\Microsoft.AspNet.Web.Optimization.WebForms.1.1.3\lib\net45\Microsoft.AspNet.Web.Optimization.WebForms.dll + + ..\packages\Microsoft.Bcl.AsyncInterfaces.6.0.0\lib\net461\Microsoft.Bcl.AsyncInterfaces.dll + ..\packages\Microsoft.ReportViewer.11.0.3366.16\lib\Microsoft.ReportViewer.Common.dll @@ -101,20 +119,122 @@ ..\packages\Microsoft.Web.RedisSessionStateProvider.2.2.6\lib\net40\Microsoft.Web.RedisSessionStateProvider.dll - - ..\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll + + ..\packages\MongoDB.Bson.2.14.1\lib\netstandard2.0\MongoDB.Bson.dll + + + ..\packages\MongoDB.Driver.2.14.1\lib\netstandard2.0\MongoDB.Driver.dll + + + ..\packages\MongoDB.Driver.Core.2.14.1\lib\netstandard2.0\MongoDB.Driver.Core.dll + + + ..\packages\MongoDB.Libmongocrypt.1.3.0\lib\netstandard2.0\MongoDB.Libmongocrypt.dll + + + ..\packages\Newtonsoft.Json.13.0.1\lib\net45\Newtonsoft.Json.dll - ..\packages\NLog.4.4.12\lib\net45\NLog.dll + ..\packages\NLog.4.7.13\lib\net45\NLog.dll - - ..\packages\StackExchange.Redis.1.2.6\lib\net46\StackExchange.Redis.dll + + ..\packages\PDFsharp.1.50.5147\lib\net20\PdfSharp.dll + + + ..\packages\PDFsharp.1.50.5147\lib\net20\PdfSharp.Charting.dll + + + ..\packages\Pipelines.Sockets.Unofficial.2.2.2\lib\net461\Pipelines.Sockets.Unofficial.dll + + + ..\packages\SharpCompress.0.30.1\lib\net461\SharpCompress.dll + + + ..\packages\Snappy.NET.1.1.1.8\lib\net45\Snappy.NET.dll + + + ..\packages\StackExchange.Redis.2.2.88\lib\net461\StackExchange.Redis.dll ..\packages\StackExchange.Redis.StrongName.1.2.6\lib\net46\StackExchange.Redis.StrongName.dll + + ..\packages\SteamWare.5.2.2204.911\lib\net462\SteamWare.dll + + + ..\packages\SteamWare.Logger.5.1.2109.1716\lib\net462\SteamWare.Logger.dll + + + ..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll + - + + ..\packages\System.Diagnostics.PerformanceCounter.6.0.0\lib\net461\System.Diagnostics.PerformanceCounter.dll + + + ..\packages\System.IO.Compression.4.3.0\lib\net46\System.IO.Compression.dll + True + True + + + ..\packages\System.IO.Pipelines.6.0.2\lib\net461\System.IO.Pipelines.dll + + + ..\packages\System.Memory.4.5.4\lib\net461\System.Memory.dll + + + ..\packages\System.Net.Http.4.3.4\lib\net46\System.Net.Http.dll + True + True + + + + ..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll + + + ..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll + + + ..\packages\System.Runtime.InteropServices.RuntimeInformation.4.3.0\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll + True + True + + + + + ..\packages\System.Security.Cryptography.Algorithms.4.3.1\lib\net461\System.Security.Cryptography.Algorithms.dll + True + True + + + ..\packages\System.Security.Cryptography.Encoding.4.3.0\lib\net46\System.Security.Cryptography.Encoding.dll + True + True + + + ..\packages\System.Security.Cryptography.Pkcs.6.0.0\lib\net461\System.Security.Cryptography.Pkcs.dll + + + ..\packages\System.Security.Cryptography.Primitives.4.3.0\lib\net46\System.Security.Cryptography.Primitives.dll + True + True + + + ..\packages\System.Security.Cryptography.X509Certificates.4.3.2\lib\net461\System.Security.Cryptography.X509Certificates.dll + True + True + + + + ..\packages\System.Text.Encoding.CodePages.6.0.0\lib\net461\System.Text.Encoding.CodePages.dll + + + ..\packages\System.Threading.Channels.6.0.0\lib\net461\System.Threading.Channels.dll + + + ..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll + + @@ -142,6 +262,9 @@ + + + @@ -157,8 +280,13 @@ font.css + + + + + @@ -181,6 +309,18 @@ + + + + + + + + + + + + @@ -199,6 +339,8 @@ + + @@ -515,10 +657,6 @@ - - {2872dcfe-8b46-43b2-baa0-842a816a2dd5} - SteamWare - {234e6827-b79c-435d-92e3-e81a3825d120} ScheMe_Data @@ -594,6 +732,9 @@ This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + + + + \ No newline at end of file diff --git a/ScheMe-SP/ScheMe-SP.csproj.user b/ScheMe-SP/ScheMe-SP.csproj.user index 0023581..6215573 100644 --- a/ScheMe-SP/ScheMe-SP.csproj.user +++ b/ScheMe-SP/ScheMe-SP.csproj.user @@ -10,6 +10,7 @@ CUSBG + Debug|Any CPU diff --git a/ScheMe-SP/Web.config b/ScheMe-SP/Web.config index 0e796b7..34e09d8 100644 --- a/ScheMe-SP/Web.config +++ b/ScheMe-SP/Web.config @@ -88,7 +88,7 @@ - + @@ -181,7 +181,7 @@ - + @@ -211,6 +211,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ScheMe-SP/bin/EnvDTE.dll b/ScheMe-SP/bin/EnvDTE.dll index ca7ff86..c29af7b 100644 Binary files a/ScheMe-SP/bin/EnvDTE.dll and b/ScheMe-SP/bin/EnvDTE.dll differ diff --git a/ScheMe-SP/bin/EnvDTE80.dll b/ScheMe-SP/bin/EnvDTE80.dll index 5ceed27..f1c843e 100644 Binary files a/ScheMe-SP/bin/EnvDTE80.dll and b/ScheMe-SP/bin/EnvDTE80.dll differ diff --git a/ScheMe-SP/bin/ICSharpCode.SharpZipLib.dll b/ScheMe-SP/bin/ICSharpCode.SharpZipLib.dll index fe643eb..4dc2759 100644 Binary files a/ScheMe-SP/bin/ICSharpCode.SharpZipLib.dll and b/ScheMe-SP/bin/ICSharpCode.SharpZipLib.dll differ diff --git a/ScheMe-SP/bin/NLog.dll b/ScheMe-SP/bin/NLog.dll index b8c37c1..ac9498d 100644 Binary files a/ScheMe-SP/bin/NLog.dll and b/ScheMe-SP/bin/NLog.dll differ diff --git a/ScheMe-SP/bin/NLog.xml b/ScheMe-SP/bin/NLog.xml index fcae6b8..a0b7feb 100644 --- a/ScheMe-SP/bin/NLog.xml +++ b/ScheMe-SP/bin/NLog.xml @@ -7,11 +7,12 @@ Indicates that the value of the marked element could be null sometimes, - so the check for null is necessary before its usage + so the check for null is necessary before its usage. - [CanBeNull] public object Test() { return null; } - public void UseTest() { + [CanBeNull] object Test() => null; + + void UseTest() { var p = Test(); var s = p.ToString(); // Warning: Possible 'System.NullReferenceException' } @@ -19,24 +20,39 @@ - Indicates that the value of the marked element could never be null + Indicates that the value of the marked element could never be null. - [NotNull] public object Foo() { + [NotNull] object Foo() { return null; // Warning: Possible 'null' assignment } + + + Can be applied to symbols of types derived from IEnumerable as well as to symbols of Task + and Lazy classes to indicate that the value of a collection item, of the Task.Result property + or of the Lazy.Value property can never be null. + + + + + Can be applied to symbols of types derived from IEnumerable as well as to symbols of Task + and Lazy classes to indicate that the value of a collection item, of the Task.Result property + or of the Lazy.Value property can be null. + + Indicates that the marked method builds string by format pattern and (optional) arguments. Parameter, which contains format string, should be given in constructor. The format string - should be in -like form + should be in -like form. [StringFormatMethod("message")] - public void ShowError(string message, params object[] args) { /* do something */ } - public void Foo() { + void ShowError(string message, params object[] args) { /* do something */ } + + void Foo() { ShowError("Failed: {0}"); // Warning: Non-existing argument in format string } @@ -46,14 +62,20 @@ Specifies which parameter of an annotated method should be treated as format-string + + + For a parameter that is expected to be one of the limited set of values. + Specify fields of which type should be used as values for this parameter. + + Indicates that the function argument should be string literal and match one of the parameters of the caller function. For example, ReSharper annotates - the parameter of + the parameter of . - public void Foo(string param) { + void Foo(string param) { if (param == null) throw new ArgumentNullException("par"); // Warning: Cannot resolve symbol } @@ -62,8 +84,8 @@ Indicates that the method is contained in a type that implements - interface - and this method is used to notify that some property value changed + System.ComponentModel.INotifyPropertyChanged interface and this method + is used to notify that some property value changed. The method should be non-static and conform to one of the supported signatures: @@ -76,12 +98,14 @@ - internal class Foo : INotifyPropertyChanged { + public class Foo : INotifyPropertyChanged { public event PropertyChangedEventHandler PropertyChanged; + [NotifyPropertyChangedInvocator] protected virtual void NotifyChanged(string propertyName) { ... } - private string _name; + string _name; + public string Name { get { return _name; } set { _name = value; NotifyChanged("LastName"); /* Warning */ } @@ -99,7 +123,7 @@ - Describes dependency between method input and output + Describes dependency between method input and output.

Function Definition Table syntax:

@@ -111,15 +135,16 @@ Value ::= true | false | null | notnull | canbenull If method has single input parameter, it's name could be omitted.
- Using halt (or void/nothing, which is the same) - for method output means that the methos doesn't return normally.
- canbenull annotation is only applicable for output parameters.
- You can use multiple [ContractAnnotation] for each FDT row, - or use single attribute with rows separated by semicolon.
+ Using halt (or void/nothing, which is the same) for method output + means that the methods doesn't return normally (throws or terminates the process).
+ Value canbenull is only applicable for output parameters.
+ You can use multiple [ContractAnnotation] for each FDT row, or use single attribute + with rows separated by semicolon. There is no notion of order rows, all rows are checked + for applicability and applied per each program state tracked by R# analysis.
- [ContractAnnotation("=> halt")] + [ContractAnnotation("=> halt")] public void TerminationMethod() @@ -127,28 +152,29 @@ public void Assert(bool condition, string text) // regular assertion method - [ContractAnnotation("s:null => true")] + [ContractAnnotation("s:null => true")] public bool IsNullOrEmpty(string s) // string.IsNullOrEmpty() - // A method that returns null if the parameter is null, and not null if the parameter is not null - [ContractAnnotation("null => null; notnull => notnull")] + // A method that returns null if the parameter is null, + // and not null if the parameter is not null + [ContractAnnotation("null => null; notnull => notnull")] public object Transform(object data) - [ContractAnnotation("s:null=>false; =>true,result:notnull; =>false, result:null")] + [ContractAnnotation("=> true, result: notnull; => false, result: null")] public bool TryParse(string s, out Person result)
- Indicates that marked element should be localized or not + Indicates that marked element should be localized or not. [LocalizationRequiredAttribute(true)] - internal class Foo { - private string str = "my string"; // Warning: Localizable string + class Foo { + string str = "my string"; // Warning: Localizable string } @@ -162,8 +188,9 @@ [CannotApplyEqualityOperator] class NoEquality { } + class UsesNoEquality { - public void Test() { + void Test() { var ca1 = new NoEquality(); var ca2 = new NoEquality(); if (ca1 != null) { // OK @@ -180,30 +207,29 @@ [BaseTypeRequired(typeof(IComponent)] // Specify requirement - internal class ComponentAttribute : Attribute { } + class ComponentAttribute : Attribute { } + [Component] // ComponentAttribute requires implementing IComponent interface - internal class MyComponent : IComponent { } + class MyComponent : IComponent { }
- Indicates that the marked symbol is used implicitly - (e.g. via reflection, in external library), so this symbol - will not be marked as unused (as well as by other usage inspections) + Indicates that the marked symbol is used implicitly (e.g. via reflection, in external library), + so this symbol will not be marked as unused (as well as by other usage inspections). - Should be used on attributes and causes ReSharper - to not mark symbols marked with such attributes as unused - (as well as by other usage inspections) + Should be used on attributes and causes ReSharper to not mark symbols marked with such attributes + as unused (as well as by other usage inspections) - Only entity marked with attribute considered used + Only entity marked with attribute considered used. - Indicates implicit assignment to a member + Indicates implicit assignment to a member. @@ -212,54 +238,149 @@ - Indicates implicit instantiation of a type + Indicates implicit instantiation of a type. - Specify what is considered used implicitly - when marked with - or + Specify what is considered used implicitly when marked + with or . - Members of entity marked with attribute are considered used + Members of entity marked with attribute are considered used. - Entity marked with attribute and all its members considered used + Entity marked with attribute and all its members considered used. This attribute is intended to mark publicly available API - which should not be removed and so is treated as used + which should not be removed and so is treated as used. - Tells code analysis engine if the parameter is completely handled - when the invoked method is on stack. If the parameter is a delegate, - indicates that delegate is executed while the method is executed. - If the parameter is an enumerable, indicates that it is enumerated - while the method is executed + Tells code analysis engine if the parameter is completely handled when the invoked method is on stack. + If the parameter is a delegate, indicates that delegate is executed while the method is executed. + If the parameter is an enumerable, indicates that it is enumerated while the method is executed. Indicates that a method does not make any observable state changes. - The same as System.Diagnostics.Contracts.PureAttribute + The same as System.Diagnostics.Contracts.PureAttribute. - [Pure] private int Multiply(int x, int y) { return x * y; } - public void Foo() { - const int a = 2, b = 2; - Multiply(a, b); // Waring: Return value of pure method is not used + [Pure] int Multiply(int x, int y) => x * y; + + void M() { + Multiply(123, 42); // Waring: Return value of pure method is not used + } + + + + + Indicates that the return value of method invocation must be used. + + + + + Indicates the type member or parameter of some type, that should be used instead of all other ways + to get the value that type. This annotation is useful when you have some "context" value evaluated + and stored somewhere, meaning that all other ways to get this value must be consolidated with existing one. + + + class Foo { + [ProvidesContext] IBarService _barService = ...; + + void ProcessNode(INode node) { + DoSomething(node, node.GetGlobalServices().Bar); + // ^ Warning: use value of '_barService' field + } } - Indicates that a parameter is a path to a file or a folder - within a web project. Path can be relative or absolute, - starting from web root (~) + Indicates that a parameter is a path to a file or a folder within a web project. + Path can be relative or absolute, starting from web root (~). + + + + + An extension method marked with this attribute is processed by ReSharper code completion + as a 'Source Template'. When extension method is completed over some expression, it's source code + is automatically expanded like a template at call site. + + + Template method body can contain valid source code and/or special comments starting with '$'. + Text inside these comments is added as source code when the template is applied. Template parameters + can be used either as additional method parameters or as identifiers wrapped in two '$' signs. + Use the attribute to specify macros for parameters. + + + In this example, the 'forEach' method is a source template available over all values + of enumerable types, producing ordinary C# 'foreach' statement and placing caret inside block: + + [SourceTemplate] + public static void forEach<T>(this IEnumerable<T> xs) { + foreach (var x in xs) { + //$ $END$ + } + } + + + + + + Allows specifying a macro for a parameter of a source template. + + + You can apply the attribute on the whole method or on any of its additional parameters. The macro expression + is defined in the property. When applied on a method, the target + template parameter is defined in the property. To apply the macro silently + for the parameter, set the property value = -1. + + + Applying the attribute on a source template method: + + [SourceTemplate, Macro(Target = "item", Expression = "suggestVariableName()")] + public static void forEach<T>(this IEnumerable<T> collection) { + foreach (var item in collection) { + //$ $END$ + } + } + + Applying the attribute on a template method parameter: + + [SourceTemplate] + public static void something(this Entity x, [Macro(Expression = "guid()", Editable = -1)] string newguid) { + /*$ var $x$Id = "$newguid$" + x.ToString(); + x.DoSomething($x$Id); */ + } + + + + + + Allows specifying a macro that will be executed for a source template + parameter when the template is expanded. + + + + + Allows specifying which occurrence of the target parameter becomes editable when the template is deployed. + + + If the target parameter is used several times in the template, only one occurrence becomes editable; + other occurrences are changed synchronously. To specify the zero-based index of the editable occurrence, + use values >= 0. To make the parameter non-editable when the template is expanded, use -1. + > + + + + Identifies the target parameter of a source template if the + is applied on a template method. @@ -267,87 +388,94 @@ ASP.NET MVC attribute. If applied to a parameter, indicates that the parameter is an MVC action. If applied to a method, the MVC action name is calculated implicitly from the context. Use this attribute for custom wrappers similar to - System.Web.Mvc.Html.ChildActionExtensions.RenderAction(HtmlHelper, String) + System.Web.Mvc.Html.ChildActionExtensions.RenderAction(HtmlHelper, String). ASP.NET MVC attribute. Indicates that a parameter is an MVC area. Use this attribute for custom wrappers similar to - System.Web.Mvc.Html.ChildActionExtensions.RenderAction(HtmlHelper, String) + System.Web.Mvc.Html.ChildActionExtensions.RenderAction(HtmlHelper, String). - ASP.NET MVC attribute. If applied to a parameter, indicates that - the parameter is an MVC controller. If applied to a method, - the MVC controller name is calculated implicitly from the context. - Use this attribute for custom wrappers similar to - System.Web.Mvc.Html.ChildActionExtensions.RenderAction(HtmlHelper, String, String) + ASP.NET MVC attribute. If applied to a parameter, indicates that the parameter is + an MVC controller. If applied to a method, the MVC controller name is calculated + implicitly from the context. Use this attribute for custom wrappers similar to + System.Web.Mvc.Html.ChildActionExtensions.RenderAction(HtmlHelper, String, String). - ASP.NET MVC attribute. Indicates that a parameter is an MVC Master. - Use this attribute for custom wrappers similar to - System.Web.Mvc.Controller.View(String, String) + ASP.NET MVC attribute. Indicates that a parameter is an MVC Master. Use this attribute + for custom wrappers similar to System.Web.Mvc.Controller.View(String, String). - ASP.NET MVC attribute. Indicates that a parameter is an MVC model type. - Use this attribute for custom wrappers similar to - System.Web.Mvc.Controller.View(String, Object) + ASP.NET MVC attribute. Indicates that a parameter is an MVC model type. Use this attribute + for custom wrappers similar to System.Web.Mvc.Controller.View(String, Object). - ASP.NET MVC attribute. If applied to a parameter, indicates that - the parameter is an MVC partial view. If applied to a method, - the MVC partial view name is calculated implicitly from the context. - Use this attribute for custom wrappers similar to - System.Web.Mvc.Html.RenderPartialExtensions.RenderPartial(HtmlHelper, String) + ASP.NET MVC attribute. If applied to a parameter, indicates that the parameter is an MVC + partial view. If applied to a method, the MVC partial view name is calculated implicitly + from the context. Use this attribute for custom wrappers similar to + System.Web.Mvc.Html.RenderPartialExtensions.RenderPartial(HtmlHelper, String). - + - ASP.NET MVC attribute. Allows disabling all inspections - for MVC views within a class or a method. + ASP.NET MVC attribute. Allows disabling inspections for MVC views within a class or a method. ASP.NET MVC attribute. Indicates that a parameter is an MVC display template. Use this attribute for custom wrappers similar to - System.Web.Mvc.Html.DisplayExtensions.DisplayForModel(HtmlHelper, String) + System.Web.Mvc.Html.DisplayExtensions.DisplayForModel(HtmlHelper, String). ASP.NET MVC attribute. Indicates that a parameter is an MVC editor template. Use this attribute for custom wrappers similar to - System.Web.Mvc.Html.EditorExtensions.EditorForModel(HtmlHelper, String) + System.Web.Mvc.Html.EditorExtensions.EditorForModel(HtmlHelper, String). ASP.NET MVC attribute. Indicates that a parameter is an MVC template. Use this attribute for custom wrappers similar to - System.ComponentModel.DataAnnotations.UIHintAttribute(System.String) + System.ComponentModel.DataAnnotations.UIHintAttribute(System.String). ASP.NET MVC attribute. If applied to a parameter, indicates that the parameter - is an MVC view. If applied to a method, the MVC view name is calculated implicitly + is an MVC view component. If applied to a method, the MVC view name is calculated implicitly from the context. Use this attribute for custom wrappers similar to - System.Web.Mvc.Controller.View(Object) + System.Web.Mvc.Controller.View(Object). + + + + + ASP.NET MVC attribute. If applied to a parameter, indicates that the parameter + is an MVC view component name. + + + + + ASP.NET MVC attribute. If applied to a parameter, indicates that the parameter + is an MVC view component view. If applied to a method, the MVC view component view name is default. ASP.NET MVC attribute. When applied to a parameter of an attribute, - indicates that this parameter is an MVC action name + indicates that this parameter is an MVC action name. [ActionName("Foo")] @@ -361,9 +489,124 @@ Razor attribute. Indicates that a parameter or a method is a Razor section. Use this attribute for custom wrappers similar to - System.Web.WebPages.WebPageBase.RenderSection(String) + System.Web.WebPages.WebPageBase.RenderSection(String). + + + Indicates how method, constructor invocation or property access + over collection type affects content of the collection. + + + + Method does not use or modify content of the collection. + + + Method only reads content of the collection but does not modify it. + + + Method can change content of the collection but does not add new elements. + + + Method can add new elements to the collection. + + + + Indicates that the marked method is assertion method, i.e. it halts control flow if + one of the conditions is satisfied. To set the condition, mark one of the parameters with + attribute. + + + + + Indicates the condition parameter of the assertion method. The method itself should be + marked by attribute. The mandatory argument of + the attribute is the assertion type. + + + + + Specifies assertion type. If the assertion method argument satisfies the condition, + then the execution continues. Otherwise, execution is assumed to be halted. + + + + Marked parameter should be evaluated to true. + + + Marked parameter should be evaluated to false. + + + Marked parameter should be evaluated to null value. + + + Marked parameter should be evaluated to not null value. + + + + Indicates that the marked method unconditionally terminates control flow execution. + For example, it could unconditionally throw exception. + + + + + Indicates that method is pure LINQ method, with postponed enumeration (like Enumerable.Select, + .Where). This annotation allows inference of [InstantHandle] annotation for parameters + of delegate type by analyzing LINQ method chains. + + + + + Indicates that IEnumerable, passed as parameter, is not enumerated. + + + + + Indicates that parameter is regular expression pattern. + + + + + Prevents the Member Reordering feature from tossing members of the marked class. + + + The attribute must be mentioned in your member reordering patterns + + + + + XAML attribute. Indicates the type that has ItemsSource property and should be treated + as ItemsControl-derived type, to enable inner items DataContext type resolve. + + + + + XAML attribute. Indicates the property of some BindingBase-derived type, that + is used to bind some item of ItemsControl-derived type. This annotation will + enable the DataContext type resolve for XAML bindings for such properties. + + + Property should have the tree ancestor of the ItemsControl type or + marked with the attribute. + + + + + Support implementation of + + + + + + + + + + + + + + Asynchronous continuation delegate - function invoked at the end of asynchronous @@ -449,6 +692,14 @@ The exceptions. Combined exception or null if no exception was thrown. + + + Disposes the Timer, and waits for it to leave the Timer-callback-method + + The Timer object to dispose + Timeout to wait (TimeSpan.Zero means dispose without waiting) + Timer disposed within timeout (true/false) + Asynchronous action. @@ -475,6 +726,16 @@ The log event. The continuation. + + + Gets the log event. + + + + + Gets the continuation. + + Implements the operator ==. @@ -508,125 +769,101 @@ A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. - + - Gets the log event. + String Conversion Helpers - + - Gets the continuation. + Converts input string value into . Parsing is case-insensitive. + + Input value + Output value + Default value + Returns false if the input value could not be parsed + + + + Converts input string value into . Parsing is case-insensitive. + + Input value + The type of the enum + Output value. Null if parse failed + + + + Converts the string representation of the name or numeric value of one or more enumerated constants to an equivalent enumerated object. A parameter specifies whether the operation is case-sensitive. The return value indicates whether the conversion succeeded. + + The enumeration type to which to convert value. + The string representation of the enumeration name or underlying value to convert. + true to ignore case; false to consider case. + When this method returns, result contains an object of type TEnum whose value is represented by value if the parse operation succeeds. If the parse operation fails, result contains the default value of the underlying type of TEnum. Note that this value need not be a member of the TEnum enumeration. This parameter is passed uninitialized. + true if the value parameter was converted successfully; otherwise, false. + Wrapper because Enum.TryParse is not present in .net 3.5 + + + + Enum.TryParse implementation for .net 3.5 + + + + Don't uses reflection + + + + Enables to extract extra context details for + + + + + Name of context + + + + + The current LogFactory next to LogManager NLog internal logger. - Writes to file, console or custom textwriter (see ) + Writes to file, console or custom text writer (see ) - Don't use as that can lead to recursive calls - stackoverflows + Don't use as that can lead to recursive calls - stackoverflow - + - Initializes static members of the InternalLogger class. + Gets a value indicating whether internal log includes Trace messages. - + - Set the config of the InternalLogger with defaults and config. + Gets a value indicating whether internal log includes Debug messages. - + - Logs the specified message without an at the specified level. + Gets a value indicating whether internal log includes Info messages. - Log level. - Message which may include positional parameters. - Arguments to the message. - + - Logs the specified message without an at the specified level. + Gets a value indicating whether internal log includes Warn messages. - Log level. - Log message. - + - Logs the specified message without an at the specified level. - will be only called when logging is enabled for level . + Gets a value indicating whether internal log includes Error messages. - Log level. - Function that returns the log message. - + - Logs the specified message with an at the specified level. - will be only called when logging is enabled for level . + Gets a value indicating whether internal log includes Fatal messages. - Exception to be logged. - Log level. - Function that returns the log message. - - - - Logs the specified message with an at the specified level. - - Exception to be logged. - Log level. - Message which may include positional parameters. - Arguments to the message. - - - - Logs the specified message with an at the specified level. - - Exception to be logged. - Log level. - Log message. - - - - Write to internallogger. - - optional exception to be logged. - level - message - optional args for - - - - Determine if logging should be avoided because of exception type. - - The exception to check. - true if logging should be avoided; otherwise, false. - - - - Determine if logging is enabled. - - The for the log event. - true if logging is enabled; otherwise, false. - - - - Write internal messages to the . - - A message to write. - - Works when property set to true. - The is used in Debug and Relese configuration. - The works only in Debug configuration and this is reason why is replaced by . - in DEBUG - - - - - Logs the assembly version and file version of the given Assembly. - - The assembly to log. @@ -1066,6 +1303,16 @@ Exception to be logged. Function that returns the log message. + + + Initializes static members of the InternalLogger class. + + + + + Set the config of the InternalLogger with defaults and config. + + Gets or sets the minimal internal log level. @@ -1086,7 +1333,7 @@ - Gets or sets a value indicating whether internal messages should be written to the . + Gets or sets a value indicating whether internal messages should be written to the .Trace @@ -1100,41 +1347,198 @@ Gets or sets the text writer that will receive internal logs. + + + Event written to the internal log. + Please note that the event is not triggered when then event hasn't the minimal log level set by + + Gets or sets a value indicating whether timestamp should be included in internal log output. - + - Gets a value indicating whether internal log includes Trace messages. + Is there an thrown when writing the message? - + - Gets a value indicating whether internal log includes Debug messages. + Logs the specified message without an at the specified level. + + Log level. + Message which may include positional parameters. + Arguments to the message. + + + + Logs the specified message without an at the specified level. + + Log level. + Log message. + + + + Logs the specified message without an at the specified level. + will be only called when logging is enabled for level . + + Log level. + Function that returns the log message. + + + + Logs the specified message with an at the specified level. + will be only called when logging is enabled for level . + + Exception to be logged. + Log level. + Function that returns the log message. + + + + Logs the specified message with an at the specified level. + + Exception to be logged. + Log level. + Message which may include positional parameters. + Arguments to the message. + + + + Logs the specified message with an at the specified level. + + Exception to be logged. + Log level. + Log message. + + + + Write to internallogger. + + optional exception to be logged. + level + message + optional args for + + + + Create log line with timestamp, exception message etc (if configured) - + - Gets a value indicating whether internal log includes Info messages. + Determine if logging should be avoided because of exception type. + + The exception to check. + true if logging should be avoided; otherwise, false. + + + + Determine if logging is enabled for given LogLevel + + The for the log event. + true if logging is enabled; otherwise, false. + + + + Determine if logging is enabled. + + true if logging is enabled; otherwise, false. + + + + Write internal messages to the log file defined in . + + Message to write. + + Message will be logged only when the property is not null, otherwise the + method has no effect. + + + + + Write internal messages to the defined in . + + Message to write. + + Message will be logged only when the property is not null, otherwise the + method has no effect. + + + + + Write internal messages to the . + + Message to write. + + Message will be logged only when the property is true, otherwise the + method has no effect. + + + + + Write internal messages to the . + + Message to write. + + Message will be logged when the property is true, otherwise the + method has no effect. + + + + + Write internal messages to the . + + A message to write. + + Works when property set to true. + The is used in Debug and Release configuration. + The works only in Debug configuration and this is reason why is replaced by . + in DEBUG + + + + + Logs the assembly version and file version of the given Assembly. + + The assembly to log. + + + + A message has been written to the internal logger - + - Gets a value indicating whether internal log includes Warn messages. + The rendered message - + - Gets a value indicating whether internal log includes Error messages. + The log level - + - Gets a value indicating whether internal log includes Fatal messages. + The exception. Could be null. + + + The type that triggered this internal log event, for example the FileTarget. + This property is not always populated. + + + + + The context name that triggered this internal log event, for example the name of the Target. + This property is not always populated. + + + + + A cyclic buffer of object. @@ -1142,12 +1546,22 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. Buffer size. Whether buffer should grow as it becomes full. The maximum number of items that the buffer can grow to. + + + Gets the capacity of the buffer + + + + + Gets the number of items in the buffer + + Adds the specified log event to the buffer. @@ -1161,16 +1575,77 @@ Events in the buffer. - - - Gets the number of items in the array. - - Condition and expression. + + + Initializes a new instance of the class. + + Left hand side of the AND expression. + Right hand side of the AND expression. + + + + Gets the left hand side of the AND expression. + + + + + Gets the right hand side of the AND expression. + + + + + Returns a string representation of this expression. + + A concatenated '(Left) and (Right)' string. + + + + Evaluates the expression by evaluating and recursively. + + Evaluation context. + The value of the conjunction operator. + + + + Exception during evaluation of condition expression. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The message. + + + + Initializes a new instance of the class. + + The message. + The inner exception. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + + The parameter is null. + + + The class name is null or is zero (0). + + Base class for representing nodes in condition expression trees. @@ -1205,84 +1680,24 @@ Evaluation context. Expression result. - - - Initializes a new instance of the class. - - Left hand side of the AND expression. - Right hand side of the AND expression. - - - - Returns a string representation of this expression. - - A concatenated '(Left) and (Right)' string. - - - - Evaluates the expression by evaluating and recursively. - - Evaluation context. - The value of the conjunction operator. - - - - Gets the left hand side of the AND expression. - - - - - Gets the right hand side of the AND expression. - - - - - Exception during evaluation of condition expression. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - The message. - - - - Initializes a new instance of the class. - - The message. - The inner exception. - - - - Initializes a new instance of the class. - - The that holds the serialized object data about the exception being thrown. - The that contains contextual information about the source or destination. - - The parameter is null. - - - The class name is null or is zero (0). - - Condition layout expression (represented by a string literal with embedded ${}). - + - Initializes a new instance of the class. + Initializes a new instance of the class. The layout. + + + Gets the layout. + + The layout. + Returns a string representation of this expression. @@ -1297,12 +1712,6 @@ Evaluation context. The value of the layout. - - - Gets the layout. - - The layout. - Condition level expression (represented by the level keyword). @@ -1326,11 +1735,18 @@ Condition literal expression (numeric, LogLevel.XXX, true or false). - + - Initializes a new instance of the class. + Initializes a new instance of the class. Literal value. + ToString value. + + + + Gets the literal value. + + The literal value. @@ -1345,12 +1761,6 @@ Evaluation context. The literal value as passed in the constructor. - - - Gets the literal value. - - The literal value. - Condition logger name expression (represented by the logger keyword). @@ -1392,27 +1802,9 @@ Marks class as a log event Condition and assigns a name to it. - - - Attaches a simple name to an item (such as , - , , etc.). - - - - - Initializes a new instance of the class. - - The name of the item. - - - - Gets the name of the item. - - The name of the item. - - Initializes a new instance of the class. + Initializes a new instance of the class. Condition method name. @@ -1421,14 +1813,20 @@ Condition method invocation expression (represented by method(p1,p2,p3) syntax). - + - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the condition method. of the condition method. + Precompiled delegate of the condition method. The method parameters. + + + Gets the method info. + + Returns a string representation of the expression. @@ -1444,17 +1842,6 @@ Evaluation context. Expression result. - - - Gets the method info. - - - - - Gets the method parameters. - - The method parameters. - A bunch of utility methods (mostly predicates) which can be used in @@ -1512,6 +1899,22 @@ A string whose lengths is to be evaluated. The length of the string. + + + Indicates whether the specified regular expression finds a match in the specified input string. + + The string to search for a match. + The regular expression pattern to match. + A string consisting of the desired options for the test. The possible values are those of the separated by commas. + true if the regular expression finds a match; otherwise, false. + + + + + + + + Marks the class as containing condition methods. @@ -1524,10 +1927,16 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The expression. + + + Gets the expression to be negated. + + The expression. + Returns a string representation of the expression. @@ -1543,12 +1952,6 @@ Evaluation context. Expression result. - - - Gets the expression to be negated. - - The expression. - Condition or expression. @@ -1556,11 +1959,23 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. Left hand side of the OR expression. Right hand side of the OR expression. + + + Gets the left expression. + + The left expression. + + + + Gets the right expression. + + The right expression. + Returns a string representation of the expression. @@ -1576,18 +1991,6 @@ Evaluation context. The value of the alternative operator. - - - Gets the left expression. - - The left expression. - - - - Gets the right expression. - - The right expression. - Exception during parsing of condition expression. @@ -1595,25 +1998,25 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. The message. - Initializes a new instance of the class. + Initializes a new instance of the class. The message. The inner exception. - Initializes a new instance of the class. + Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. @@ -1665,6 +2068,21 @@ The root of the expression syntax tree which can be used to get the value of the condition in a specified context. + + + Try stringed keyword to + + + + success? + + + + Parse number + + negative number? minus should be parsed first. + + Condition relational (==, !=, <, <=, @@ -1673,12 +2091,30 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The left expression. The right expression. The relational operator. + + + Gets the left expression. + + The left expression. + + + + Gets the right expression. + + The right expression. + + + + Gets the relational operator. + + The operator. + Returns a string representation of the expression. @@ -1707,12 +2143,12 @@ Promote values to the type needed for the comparision, e.g. parse a string to int. - - + + - Promoto to type + Promotes to type @@ -1730,7 +2166,7 @@ Get the order for the type for comparision. - index, 0 to maxint. Lower is first + index, 0 to max int. Lower is first @@ -1749,24 +2185,6 @@ - - - Gets the left expression. - - The left expression. - - - - Gets the right expression. - - The right expression. - - - - Gets the relational operator. - - The operator. - Relational operators used in conditions. @@ -1813,6 +2231,24 @@ The string reader. + + + Gets the type of the token. + + The type of the token. + + + + Gets the token value. + + The token value. + + + + Gets the value of a string token. + + The string token value. + Asserts current token type and advances to the next token. @@ -1879,30 +2315,6 @@ current char is match - - - Gets the token position. - - The token position. - - - - Gets the type of the token. - - The type of the token. - - - - Gets the token value. - - The token value. - - - - Gets the value of a string token. - - The string token value. - Mapping between characters and token types for punctuations. @@ -1928,13 +2340,19 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. Identifies that the output of layout or layout render does not change for the lifetime of the current appdomain. + + A layout(renderer) could be converted to a literal when: + - The layout and all layout properties are SimpleLayout or [AppDomainFixedOutput] + + Recommendation: Apply this attribute to a layout or layout-renderer which have the result only changes by properties of type Layout. + @@ -1944,7 +2362,7 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The type of the array item. The XML element name that represents the item. @@ -2003,19 +2421,124 @@ Everything of an assembly could be loaded by + + + Called before the assembly will be loaded. + + Initializes a new instance of the class. The assemblies to scan for named items. + + + Gets or sets default singleton instance of . + + + This property implements lazy instantiation so that the is not built before + the internal logger is configured. + + + + + Gets or sets the creator delegate used to instantiate configuration objects. + + + By overriding this property, one can enable dependency injection or interception for created objects. + + + + + Gets the factory. + + The target factory. + + + + Gets the factory. + + The filter factory. + gets the factory - not using due to backwardscomp. + not using due to backwards-compatibility. + + + Gets the factory. + + The layout renderer factory. + + + + Gets the factory. + + The layout factory. + + + + Gets the ambient property factory. + + The ambient property factory. + + + + Legacy interface, no longer used by the NLog engine + + + + + Gets or sets the JSON serializer to use with or + + + + + Gets or sets the string serializer to use with + + + + + Gets or sets the custom object-type transformation for use in , or + + + + + Gets or sets the parameter converter to use with , or + + + + + Perform message template parsing and formatting of LogEvent messages (True = Always, False = Never, Null = Auto Detect) + + + - Null (Auto Detect) : NLog-parser checks for positional parameters, and will then fallback to string.Format-rendering. + - True: Always performs the parsing of and rendering of using the NLog-parser (Allows custom formatting with ) + - False: Always performs parsing and rendering using string.Format (Fastest if not using structured logging) + + + + + Gets the time source factory. + + The time source factory. + + + + Gets the condition method factory. + + The condition method factory. + + + + Gets the condition method factory (precompiled) + + The condition method factory. + Registers named items from the assembly. @@ -2068,75 +2591,6 @@ Registers items in NLog.Extended.dll using late-bound types, so that we don't need a reference to NLog.Extended.dll. - - - Called before the assembly will be loaded. - - - - - Gets or sets default singleton instance of . - - - This property implements lazy instantiation so that the is not built before - the internal logger is configured. - - - - - Gets or sets the creator delegate used to instantiate configuration objects. - - - By overriding this property, one can enable dependency injection or interception for created objects. - - - - - Gets the factory. - - The target factory. - - - - Gets the factory. - - The filter factory. - - - - Gets the factory. - - The layout renderer factory. - - - - Gets the factory. - - The layout factory. - - - - Gets the ambient property factory. - - The ambient property factory. - - - - Gets or sets the JSON serializer to use with . - - - - - Gets the time source factory. - - The time source factory. - - - - Gets the condition method factory. - - The condition method factory. - Attribute used to mark the default parameters for layout renderers. @@ -2144,12 +2598,22 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. + + + + + Dynamic filtering with a positive list of enabled levels + + + + + Dynamic filtering with a minlevel and maxlevel range - Format of the excpetion output to the specific target. + Format of the exception output to the specific target. @@ -2187,6 +2651,26 @@ Appends the contents of an Exception's Data property to the specified target. + + + Destructure the exception (usually into JSON) + + + + + Appends the from the application or the object that caused the error. + + + + + Appends the from the application or the object that caused the error. + + + + + Appends any additional properties that specific type of Exception might have. + + Factory for class-based items. @@ -2194,6 +2678,175 @@ The base type of each item. The type of the attribute used to annotate items. + + + Scans the assembly. + + The types to scan. + The prefix. + + + + Registers the type. + + The type to register. + The item name prefix. + + + + Registers the item based on a type name. + + Name of the item. + Name of the type. + + + + Clears the contents of the factory. + + + + + Registers a single type definition. + + The item name. + The type of the item. + + + + Tries to get registered item definition. + + Name of the item. + Reference to a variable which will store the item definition. + Item definition. + + + + Tries to create an item instance. + + Name of the item. + The result. + True if instance was created successfully, false otherwise. + + + + Creates an item instance. + + The name of the item. + Created item. + + + + Factory specialized for s. + + + + + Clear all func layouts + + + + + Register a layout renderer with a callback function. + + Name of the layoutrenderer, without ${}. + the renderer that renders the value. + + + + Tries to create an item instance. + + Name of the item. + The result. + True if instance was created successfully, false otherwise. + + + + Provides means to populate factories of named items (such as targets, layouts, layout renderers, etc.). + + + + + Implemented by objects which support installation and uninstallation. + + + + + Performs installation which requires administrative permissions. + + The installation context. + + + + Performs uninstallation which requires administrative permissions. + + The installation context. + + + + Determines whether the item is installed. + + The installation context. + + Value indicating whether the item is installed or null if it is not possible to determine. + + + + + Interface for accessing configuration details + + + + + Name of the config section + + + + + Configuration Key/Value Pairs + + + + + Child config sections + + + + + Interface for loading NLog + + + + + Finds and loads the NLog configuration + + LogFactory that owns the NLog configuration + Name of NLog.config file (optional) + NLog configuration (or null if none found) + + + + Notifies when LoggingConfiguration has been successfully applied + + LogFactory that owns the NLog configuration + NLog Config + + + + Get file paths (including filename) for the possible NLog config files. + + Name of NLog.config file (optional) + The file paths to the possible config file + + + + Level enabled flags for each LogLevel ordinal + + + + + Converts the filter into a simple + + Represents a factory of named items (such as targets, layouts, layout renderers, etc.). @@ -2231,124 +2884,12 @@ The result. True if instance was created successfully, false otherwise. - - - Provides means to populate factories of named items (such as targets, layouts, layout renderers, etc.). - - - - - Scans the assembly. - - The types to scan. - The prefix. - - - - Registers the type. - - The type to register. - The item name prefix. - - - - Registers the item based on a type name. - - Name of the item. - Name of the type. - - - - Clears the contents of the factory. - - - - - Registers a single type definition. - - The item name. - The type of the item. - - - - Tries to get registered item definition. - - Name of the item. - Reference to a variable which will store the item definition. - Item definition. - - - - Tries to create an item instance. - - Name of the item. - The result. - True if instance was created successfully, false otherwise. - - - - Creates an item instance. - - The name of the item. - Created item. - - - - Factory specialized for s. - - - - - Clear all func layouts - - - - - Register a layout renderer with a callback function. - - Name of the layoutrenderer, without ${}. - the renderer that renders the value. - - - - Tries to create an item instance. - - Name of the item. - The result. - True if instance was created successfully, false otherwise. - - - - Implemented by objects which support installation and uninstallation. - - - - - Performs installation which requires administrative permissions. - - The installation context. - - - - Performs uninstallation which requires administrative permissions. - - The installation context. - - - - Determines whether the item is installed. - - The installation context. - - Value indicating whether the item is installed or null if it is not possible to determine. - - Provides context for install/uninstall operations. - + Mapping between log levels and console output colors. @@ -2364,6 +2905,32 @@ The log output. + + + Gets or sets the installation log level. + + + + + Gets or sets a value indicating whether to ignore failures during installation. + + + + + Whether installation exceptions should be rethrown. If IgnoreFailures is set to true, + this property has no effect (there are no exceptions to rethrow). + + + + + Gets the installation parameters. + + + + + Gets or sets the log output. + + Logs the specified trace message. @@ -2410,206 +2977,196 @@ Log event info object. - + - Gets or sets the installation log level. + Convert object-value into specified type - + - Gets or sets a value indicating whether to ignore failures during installation. + Parses the input value and converts into the wanted type + + Input Value + Wanted Type + Format to use when parsing + Culture to use when parsing + Output value with wanted type + + + + Interface for fluent setup of LogFactory options - + - Gets the installation parameters. + LogFactory under configuration - + - Gets or sets the log output. + Interface for fluent setup of LogFactory options for extension loading + + + + + LogFactory under configuration + + + + + Interface for fluent setup of LogFactory options for enabling NLog + + + + + LogFactory under configuration + + + + + Interface for fluent setup of LogFactory options + + + + + LogFactory under configuration + + + + + LoggingConfiguration being built + + + + + Interface for fluent setup of LogFactory options for logevent serialization + + + + + LogFactory under configuration + + + + + Encapsulates and the logic to match the actual logger name + All subclasses defines immutable objects. + Concrete subclasses defines various matching rules through + + + + + Creates a concrete based on . + + + Rules used to select the concrete implementation returned: + + if is null => returns (never matches) + if doesn't contains any '*' nor '?' => returns (matches only on case sensitive equals) + if == '*' => returns (always matches) + if doesn't contain '?' + + if contains exactly 2 '*' one at the beginning and one at the end (i.e. "*foobar*) => returns + if contains exactly 1 '*' at the beginning (i.e. "*foobar") => returns + if contains exactly 1 '*' at the end (i.e. "foobar*") => returns + + + returns + + + + It may include one or more '*' or '?' wildcards at any position. + + '*' means zero or more occurrences of any character + '?' means exactly one occurrence of any character + + + A concrete + + + + Returns the argument passed to + + + + + Checks whether given name matches the logger name pattern. + + String to be matched. + A value of when the name matches, otherwise. + + + + Defines a that never matches. + Used when pattern is null + + + + + Defines a that always matches. + Used when pattern is '*' + + + + + Defines a that matches with a case-sensitive Equals + Used when pattern is a string without wildcards '?' '*' + + + + + Defines a that matches with a case-sensitive StartsWith + Used when pattern is a string like "*foobar" + + + + + Defines a that matches with a case-sensitive EndsWith + Used when pattern is a string like "foobar*" + + + + + Defines a that matches with a case-sensitive Contains + Used when pattern is a string like "*foobar*" + + + + + Defines a that matches with a complex wildcards combinations: + + '*' means zero or more occurrences of any character + '?' means exactly one occurrence of any character + + used when pattern is a string containing any number of '?' or '*' in any position + i.e. "*Server[*].Connection[?]" - Keeps logging configuration and provides simple API - to modify it. + Keeps logging configuration and provides simple API to modify it. This class is thread-safe..ToList() is used for that purpose. - + Variables defined in xml or in API. name is case case insensitive. + + + Gets the factory that will be configured + + - Initializes a new instance of the class. + Initializes a new instance of the class. - + - Compare objects based on their name. + Initializes a new instance of the class. - This property is use to cache the comparer object. - - - - Registers the specified target object. The name of the target is read from . - - - The target object with a non - - when is - - - - Registers the specified target object under a given name. - - - Name of the target. - - - The target object. - - when is - when is - - - - Finds the target with the specified name. - - - The name of the target to be found. - - - Found target or when the target is not found. - - - - - Finds the target with the specified name and specified type. - - - The name of the target to be found. - - Type of the target - - Found target or when the target is not found of not of type - - - - - Add a rule with min- and maxLevel. - - Minimum log level needed to trigger this rule. - Maximum log level needed to trigger this rule. - Name of the target to be written when the rule matches. - Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. - - - - Add a rule with min- and maxLevel. - - Minimum log level needed to trigger this rule. - Maximum log level needed to trigger this rule. - Target to be written to when the rule matches. - Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. - - - - Add a rule for one loglevel. - - log level needed to trigger this rule. - Name of the target to be written when the rule matches. - Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. - - - - Add a rule for one loglevel. - - log level needed to trigger this rule. - Target to be written to when the rule matches. - Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. - - - - Add a rule for alle loglevels. - - Name of the target to be written when the rule matches. - Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. - - - - Add a rule for alle loglevels. - - Target to be written to when the rule matches. - Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. - - - - Called by LogManager when one of the log configuration files changes. - - - A new instance of that represents the updated configuration. - - - - - Removes the specified named target. - - - Name of the target. - - - - - Installs target-specific objects on current system. - - The installation context. - - Installation typically runs with administrative permissions. - - - - - Uninstalls target-specific objects from current system. - - The installation context. - - Uninstallation typically runs with administrative permissions. - - - - - Closes all targets and releases any unmanaged resources. - - - - - Log to the internal (NLog) logger the information about the and associated with this instance. - - - The information are only recorded in the internal logger if Debug level is enabled, otherwise nothing is - recorded. - - - - - Flushes any pending log messages on all appenders. - - The asynchronous continuation. - - - - Validates the configuration. - - - - - Copies all variables from provided dictionary into current configuration variables. - - Master variables dictionary @@ -2656,11 +3213,221 @@ Gets all targets. + + + Compare objects based on their name. + + This property is use to cache the comparer object. + Defines methods to support the comparison of objects for equality based on their name. + + + Registers the specified target object. The name of the target is read from . + + + The target object with a non + + when is + + + + Registers the specified target object under a given name. + + Name of the target. + The target object. + when is + when is + + + + Finds the target with the specified name. + + + The name of the target to be found. + + + Found target or when the target is not found. + + + + + Finds the target with the specified name and specified type. + + + The name of the target to be found. + + Type of the target + + Found target or when the target is not found of not of type + + + + + Add a rule with min- and maxLevel. + + Minimum log level needed to trigger this rule. + Maximum log level needed to trigger this rule. + Name of the target to be written when the rule matches. + Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. + + + + Add a rule with min- and maxLevel. + + Minimum log level needed to trigger this rule. + Maximum log level needed to trigger this rule. + Target to be written to when the rule matches. + Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. + + + + Add a rule with min- and maxLevel. + + Minimum log level needed to trigger this rule. + Maximum log level needed to trigger this rule. + Target to be written to when the rule matches. + Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. + Gets or sets a value indicating whether to quit processing any further rule when this one matches. + + + + Add a rule for one loglevel. + + log level needed to trigger this rule. + Name of the target to be written when the rule matches. + Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. + + + + Add a rule for one loglevel. + + log level needed to trigger this rule. + Target to be written to when the rule matches. + Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. + + + + Add a rule for one loglevel. + + log level needed to trigger this rule. + Target to be written to when the rule matches. + Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. + Gets or sets a value indicating whether to quit processing any further rule when this one matches. + + + + Add a rule for all loglevels. + + Name of the target to be written when the rule matches. + Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. + + + + Add a rule for all loglevels. + + Target to be written to when the rule matches. + Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. + + + + Add a rule for all loglevels. + + Target to be written to when the rule matches. + Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. + Gets or sets a value indicating whether to quit processing any further rule when this one matches. + + + + Finds the logging rule with the specified name. + + The name of the logging rule to be found. + Found logging rule or when not found. + + + + Removes the specified named logging rule. + + The name of the logging rule to be removed. + Found one or more logging rule to remove, or when not found. + + + + Called by LogManager when one of the log configuration files changes. + + + A new instance of that represents the updated configuration. + + + + + Removes the specified named target. + + Name of the target. + + + + Installs target-specific objects on current system. + + The installation context. + + Installation typically runs with administrative permissions. + + + + + Uninstalls target-specific objects from current system. + + The installation context. + + Uninstallation typically runs with administrative permissions. + + + + + Closes all targets and releases any unmanaged resources. + + + + + Log to the internal (NLog) logger the information about the and associated with this instance. + + + The information are only recorded in the internal logger if Debug level is enabled, otherwise nothing is + recorded. + + + + + Validates the configuration. + + + + + Copies all variables from provided dictionary into current configuration variables. + + Master variables dictionary + + + + Replace a simple variable with a value. The original value is removed and thus we cannot redo this in a later stage. + + + + + + + Checks whether unused targets exist. If found any, just write an internal log at Warn level. + If initializing not started or failed, then checking process will be canceled + + + + + Arguments for events. @@ -2668,23 +3435,132 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - The old configuration. - The new configuration. + The new configuration. + The old configuration. - + Gets the old configuration. The old configuration. - + Gets the new configuration. The new configuration. + + + Gets the new configuration + + The new configuration. + + + + Gets the old configuration + + The old configuration. + + + + Gets the optional boolean attribute value. + + + Name of the attribute. + Default value to return if the attribute is not found or if there is a parse error + Boolean attribute value or default. + + + + Remove the namespace (before :) + + + x:a, will be a + + + + + + + Enables loading of NLog configuration from a file + + + + + Get default file paths (including filename) for possible NLog config files. + + + + + Get default file paths (including filename) for possible NLog config files. + + + + + Loads NLog configuration from + + + + + Constructor + + + + + + Loads NLog configuration from provided config section + + + + + + + Builds list with unique keys, using last value of duplicates. High priority keys placed first. + + + + + + + Parse loglevel, but don't throw if exception throwing is disabled + + Name of attribute for logging. + Value of parse. + Used if there is an exception + + + + + Parses a single config section within the NLog-config + + + Section was recognized + + + + Parse {Rules} xml element + + + Rules are added to this parameter. + + + + Parse {Logger} xml element + + + + + + Parse boolean + + Name of the property for logging. + value to parse + Default value to return if the parse failed + Boolean attribute value or default. + Arguments for . @@ -2692,13 +3568,13 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. Whether configuration reload has succeeded. - Initializes a new instance of the class. + Initializes a new instance of the class. Whether configuration reload has succeeded. The exception during configuration reload. @@ -2715,6 +3591,12 @@ The exception. + + + Enables FileWatcher for the currently loaded NLog Configuration File, + and supports automatic reload on file modification. + + Represents a logging rule. An equivalent of <logger /> configuration element. @@ -2722,73 +3604,42 @@ - Create an empty . + Create an empty . + + + + + Create an empty . - Create a new with a and which writes to . + Create a new with a and which writes to . - Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. + Logger name pattern used for . It may include one or more '*' or '?' wildcards at any position. Minimum log level needed to trigger this rule. Maximum log level needed to trigger this rule. Target to be written to when the rule matches. - Create a new with a which writes to . + Create a new with a which writes to . - Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. + Logger name pattern used for . It may include one or more '*' or '?' wildcards at any position. Minimum log level needed to trigger this rule. Target to be written to when the rule matches. - Create a (disabled) . You should call or see cref="EnableLoggingForLevels"/> to enable logging. + Create a (disabled) . You should call or to enable logging. - Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends. + Logger name pattern used for . It may include one or more '*' or '?' wildcards at any position. Target to be written to when the rule matches. - + - Enables logging for a particular level. + Rule identifier to allow rule lookup - Level to be enabled. - - - - Enables logging for a particular levels between (included) and . - - Minimum log level needed to trigger this rule. - Maximum log level needed to trigger this rule. - - - - Disables logging for a particular level. - - Level to be disabled. - - - - Returns a string representation of . Used for debugging. - - - A that represents the current . - - - - - Checks whether te particular log level is enabled for this rule. - - Level to be checked. - A value of when the log level is enabled, otherwise. - - - - Checks whether given name matches the logger name pattern. - - String to be matched. - A value of when the name matches, otherwise. @@ -2815,7 +3666,12 @@ Gets or sets logger name pattern. - Logger name pattern. It may include the '*' wildcard at the beginning, at the end or at both ends but not anywhere else. + Logger name pattern used by to check if a logger name matches this rule. + It may include one or more '*' or '?' wildcards at any position. + + '*' means zero or more occurrences of any character + '?' means exactly one occurrence of any character + @@ -2823,73 +3679,189 @@ Gets the collection of log levels enabled by this rule. - + + + Default action if none of the filters match + + + + + Enables logging for a particular level. + + Level to be enabled. + + + + Enables logging for a particular levels between (included) and . + + Minimum log level needed to trigger this rule. + Maximum log level needed to trigger this rule. + + + + Disables logging for a particular level. + + Level to be disabled. + + + + Disables logging for particular levels between (included) and . + + Minimum log level to be disables. + Maximum log level to de disabled. + + + + Enables logging the levels between (included) and . All the other levels will be disabled. + + Minimum log level needed to trigger this rule. + Maximum log level needed to trigger this rule. + + + + Returns a string representation of . Used for debugging. + + + A that represents the current . + + + + + Checks whether te particular log level is enabled for this rule. + + Level to be checked. + A value of when the log level is enabled, otherwise. + + + + Checks whether given name matches the . + + String to be matched. + A value of when the name matches, otherwise. + + + + Default filtering with static level config + + + Factory for locating methods. - The type of the class marker attribute. - The type of the method marker attribute. - + - Scans the assembly for classes marked with - and methods marked with and adds them + Initializes a new instance of the class. + + Helper method to extract relevant methods from type + + + + Scans the assembly for classes marked with expected class + and methods marked with expected and adds them to the factory. The types to scan. The prefix to use for names. - + Registers the type. The type to register. The item name prefix. - + + + Scans a type for relevant methods with their symbolic names + + Include types that are marked with this attribute + Include methods that are marked with this attribute + Class Type to scan + Collection of methods with their symbolic names + + Clears contents of the factory. - + Registers the definition of a single method. - The method name. - The method info. + The method name. + The method info. - + + + Registers the definition of a single method. + + The method name. + The method info. + The precompiled method delegate. + + Tries to retrieve method by name. - The method name. + The method name. The result. A value of true if the method was found, false otherwise. - + + + Tries to retrieve method-delegate by name. + + The method name. + The result. + A value of true if the method was found, false otherwise. + + Retrieves method by name. - Method name. + Method name. MethodInfo object. - + + + Retrieves method by name. + + Method name. + Method delegate object. + + Tries to get method definition. - The method . + The method name. The result. A value of true if the method was found, false otherwise. - + - Gets a collection of all registered items in the factory. + Marks the layout or layout renderer depends on mutable objects from the LogEvent + + This can be or - - Sequence of key/value pairs where each key represents the name - of the item and value is the of - the item. - + + + + Attaches a simple name to an item (such as , + , , etc.). + + + + + Initializes a new instance of the class. + + The name of the item. + + + + Gets the name of the item. + + The name of the item. @@ -2916,12 +3888,6 @@ Represents simple XML element with case-insensitive attribute semantics. - - - Initializes a new instance of the class. - - The input URI. - Initializes a new instance of the class. @@ -2933,61 +3899,6 @@ Prevents a default instance of the class from being created. - - - Last error occured during configuration read - - - - - Returns children elements with the specified element name. - - Name of the element. - Children elements with the specified element name. - - - - Gets the required attribute. - - Name of the attribute. - Attribute value. - Throws if the attribute is not specified. - - - - Gets the optional boolean attribute value. - - Name of the attribute. - Default value to return if the attribute is not found. - Boolean attribute value or default. - - - - Gets the optional boolean attribute value. If whitespace, then returning null. - - Name of the attribute. - Default value to return if the attribute is not found. - Boolean attribute value or default. - - - - Gets the optional attribute value. - - Name of the attribute. - The default value. - Value of the attribute or default value. - - - - Asserts that the name of the element is among specified element names. - - The allowed names. - - - - Returns all parsing errors from current and all child elements. - - Gets the element name. @@ -3008,6 +3919,42 @@ Gets the value of the element. + + + Last error occured during configuration read + + + + + Returns children elements with the specified element name. + + Name of the element. + Children elements with the specified element name. + + + + Asserts that the name of the element is among specified element names. + + The allowed names. + + + + Returns all parsing errors from current and all child elements. + + + + + Special attribute we could ignore + + + + + Default implementation of + + + + + Attribute used to mark the required parameters for targets, @@ -3109,6 +4056,14 @@ - The result should not be precalculated, for example the target sends some extra context information. + + + Marks the layout or layout renderer as thread safe - it producing correct results + regardless of the number of threads it's running on. + + Without this attribute then the target concurrency will be reduced + + A class for configuring NLog through an XML configuration file @@ -3123,31 +4078,137 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. Configuration file to be read. - Initializes a new instance of the class. + Initializes a new instance of the class. Configuration file to be read. - The to which to apply any applicable configuration values. + The to which to apply any applicable configuration values. - Initializes a new instance of the class. + Initializes a new instance of the class. Configuration file to be read. Ignore any errors during configuration. - Initializes a new instance of the class. + Initializes a new instance of the class. Configuration file to be read. Ignore any errors during configuration. - The to which to apply any applicable configuration values. + The to which to apply any applicable configuration values. + + + + Initializes a new instance of the class. + + XML reader to read from. + + + + Initializes a new instance of the class. + + containing the configuration section. + Name of the file that contains the element (to be used as a base for including other files). null is allowed. + + + + Initializes a new instance of the class. + + containing the configuration section. + Name of the file that contains the element (to be used as a base for including other files). null is allowed. + The to which to apply any applicable configuration values. + + + + Initializes a new instance of the class. + + containing the configuration section. + Name of the file that contains the element (to be used as a base for including other files). null is allowed. + Ignore any errors during configuration. + + + + Initializes a new instance of the class. + + containing the configuration section. + Name of the file that contains the element (to be used as a base for including other files). null is allowed. + Ignore any errors during configuration. + The to which to apply any applicable configuration values. + + + + Initializes a new instance of the class. + + The XML contents. + Name of the XML file. + The to which to apply any applicable configuration values. + + + + Parse XML string as NLog configuration + + NLog configuration in XML to be parsed + + + + Parse XML string as NLog configuration + + NLog configuration in XML to be parsed + NLog LogFactory + + + + Gets the default object by parsing + the application configuration file (app.exe.config). + + + + + Did the Succeeded? true= success, false= error, null = initialize not started yet. + + + + + Gets or sets a value indicating whether all of the configuration files + should be watched for changes and reloaded automatically when changed. + + + + + Gets the collection of file names which should be watched for changes by NLog. + This is the list of configuration files processed. + If the autoReload attribute is not set it returns empty collection. + + + + + Re-reads the original configuration file and returns the new object. + + The new object. + + + + Get file paths (including filename) for the possible NLog config files. + + The file paths to the possible config file + + + + Overwrite the paths (including filename) for the possible NLog config files. + + The file paths to the possible config file + + + + Clear the candidate file paths and return to the defaults. + @@ -3156,100 +4217,12 @@ filepath reader or null if filename is empty. - - - Initializes a new instance of the class. - - containing the configuration section. - Name of the file that contains the element (to be used as a base for including other files). - - - - Initializes a new instance of the class. - - containing the configuration section. - Name of the file that contains the element (to be used as a base for including other files). - The to which to apply any applicable configuration values. - - - - Initializes a new instance of the class. - - containing the configuration section. - Name of the file that contains the element (to be used as a base for including other files). - Ignore any errors during configuration. - - - - Initializes a new instance of the class. - - containing the configuration section. - Name of the file that contains the element (to be used as a base for including other files). - Ignore any errors during configuration. - The to which to apply any applicable configuration values. - - - - Initializes a new instance of the class. - - The XML element. - Name of the XML file. - - - - Initializes a new instance of the class. - - The XML element. - Name of the XML file. - If set to true errors will be ignored during file processing. - - - - Re-reads the original configuration file and returns the new object. - - The new object. - - - - Get file paths (including filename) for the possible NLog config files. - - The filepaths to the possible config file - - - - Overwrite the paths (including filename) for the possible NLog config files. - - The filepaths to the possible config file - - - - Clear the candidate file paths and return to the defaults. - - - - - Remove all spaces, also in between text. - - text - text without spaces - Tabs and other whitespace is not removed! - - - - Remove the namespace (before :) - - - x:a, will be a - - - - Initializes the configuration. containing the configuration section. - Name of the file that contains the element (to be used as a base for including other files). + Name of the file that contains the element (to be used as a base for including other files). null is allowed. Ignore any errors during configuration. @@ -3261,12 +4234,6 @@ Root NLog configuration xml element - - - Checks whether unused targets exist. If found any, just write an internal log at Warn level. - If initializing not started or failed, then checking process will be canceled - - Add a file with configuration. Check if not already included. @@ -3290,7 +4257,7 @@ path to config file. The default value for the autoReload option. - + Parse {NLog} xml element. @@ -3298,19 +4265,12 @@ path to config file. The default value for the autoReload option. - + - Parse {Rules} xml element + Parses a single config section within the NLog-config - - Rules are added to this parameter. - - - - Parse {Logger} xml element - - - Rules are added to this parameter. + + Section was recognized @@ -3320,38 +4280,8 @@ relative or absolute fileMask - - - Replace a simple variable with a value. The orginal value is removed and thus we cannot redo this in a later stage. - - Use for that: - - - - - - - Gets the default object by parsing - the application configuration file (app.exe.config). - - - - - Did the Succeeded? true= success, false= error, null = initialize not started yet. - - - - - Gets or sets a value indicating whether all of the configuration files - should be watched for changes and reloaded automatically when changed. - - - - - Gets the collection of file names which should be watched for changes by NLog. - This is the list of configuration files processed. - If the autoReload attribute is not set it returns empty collection. - + + @@ -3362,6 +4292,23 @@ described here. + + + Gets or sets the condition expression. + + + + + + Checks whether log event should be logged or not. + + Log event. + + - if the log event should be ignored
+ - if the filter doesn't want to decide
+ - if the log event should be logged
+ .
+
An abstract filter class. Provides a way to eliminate log messages @@ -3370,9 +4317,15 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. + + + Gets or sets the action to be taken when filter matches. + + + Gets the result of evaluating filter against given log event. @@ -3391,29 +4344,6 @@ - if the log event should be logged
. - - - Gets or sets the action to be taken when filter matches. - - - - - - Checks whether log event should be logged or not. - - Log event. - - - if the log event should be ignored
- - if the filter doesn't want to decide
- - if the log event should be logged
- .
-
- - - Gets or sets the condition expression. - - - Marks class as a layout renderer and assigns a name to it. @@ -3421,7 +4351,7 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the filter. @@ -3462,7 +4392,7 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. @@ -3478,17 +4408,6 @@ This filter is deprecated in favor of <when /> which is based on conditions. - - - Checks whether log event should be logged or not. - - Log event. - - - if the log event should be ignored
- - if the filter doesn't want to decide
- - if the log event should be logged
- .
-
Gets or sets a value indicating whether to ignore case when comparing strings. @@ -3501,13 +4420,7 @@ - - - Matches when the calculated layout is equal to the specified substring. - This filter is deprecated in favor of <when /> which is based on conditions. - - - + Checks whether log event should be logged or not. @@ -3518,6 +4431,12 @@ - if the log event should be logged
.
+ + + Matches when the calculated layout is equal to the specified substring. + This filter is deprecated in favor of <when /> which is based on conditions. + + Gets or sets a value indicating whether to ignore case when comparing strings. @@ -3530,13 +4449,7 @@ - - - Matches when the calculated layout does NOT contain the specified substring. - This filter is deprecated in favor of <when /> which is based on conditions. - - - + Checks whether log event should be logged or not. @@ -3547,6 +4460,25 @@ - if the log event should be logged
.
+ + + Matches the provided filter-method + + + + + Initializes a new instance of the class. + + + + + + + + Matches when the calculated layout does NOT contain the specified substring. + This filter is deprecated in favor of <when /> which is based on conditions. + + Gets or sets the substring to be matched. @@ -3559,18 +4491,7 @@ - - - Matches when the calculated layout is NOT equal to the specified substring. - This filter is deprecated in favor of <when /> which is based on conditions. - - - - - Initializes a new instance of the class. - - - + Checks whether log event should be logged or not. @@ -3581,6 +4502,17 @@ - if the log event should be logged
.
+ + + Matches when the calculated layout is NOT equal to the specified substring. + This filter is deprecated in favor of <when /> which is based on conditions. + + + + + Initializes a new instance of the class. + + Gets or sets a string to compare the layout to. @@ -3593,6 +4525,128 @@ + + + Checks whether log event should be logged or not. + + Log event. + + - if the log event should be ignored
+ - if the filter doesn't want to decide
+ - if the log event should be logged
+ .
+
+ + + Matches when the result of the calculated layout has been repeated a moment ago + + + + + How long before a filter expires, and logging is accepted again + + + + + + Max length of filter values, will truncate if above limit + + + + + + Applies the configured action to the initial logevent that starts the timeout period. + Used to configure that it should ignore all events until timeout. + + + + + + Max number of unique filter values to expect simultaneously + + + + + + Default number of unique filter values to expect, will automatically increase if needed + + + + + + Insert FilterCount value into when an event is no longer filtered + + + + + + Append FilterCount to the when an event is no longer filtered + + + + + + Reuse internal buffers, and doesn't have to constantly allocate new buffers + + + + + + Default buffer size for the internal buffers + + + + + + Can be used if has been enabled. + + + + + Initializes a new instance of the class. + + + + + Checks whether log event should be logged or not. In case the LogEvent has just been repeated. + + Log event. + + - if the log event should be ignored
+ - if the filter doesn't want to decide
+ - if the log event should be logged
+ .
+
+ + + Uses object pooling, and prunes stale filter items when the pool runs dry + + + + + Remove stale filter-value from the cache, and fill them into the pool for reuse + + + + + Renders the Log Event into a filter value, that is used for checking if just repeated + + + + + Repeated LogEvent detected. Checks if it should activate filter-action + + + + + Filter Value State (mutable) + + + + + Filter Lookup Key (immutable) + + A global logging class using caller info to find the logger. @@ -3600,7 +4654,7 @@ - Starts building a log event with the specified . + Starts building a log event with the specified . The log level. The full path of the source file that contains the caller. This is the file path at the time of compile. @@ -3666,6 +4720,11 @@ The to send the log event. The for the log event. + + + Gets the created by the builder. + + Sets the information of the logging event. @@ -3805,11 +4864,6 @@ The full path of the source file that contains the caller. This is set at by the compiler. The line number in the source file at which the method is called. This is set at by the compiler. - - - Gets the created by the builder. - - Extension methods for NLog . @@ -3867,7 +4921,7 @@ - Global Diagnostics Context - used for log4net compatibility. + Global Diagnostics Context This class was marked as obsolete on NLog 2.0 and it may be removed in a future release. @@ -3987,1426 +5041,61 @@ Clears the content of the GDC. + + + Include context properties + + + + + Gets or sets a value indicating whether to include contents of the dictionary. + + + + + + Gets or sets a value indicating whether to include contents of the stack. + + + + + + Gets or sets the option to include all properties from the log events + + + + + + Gets or sets a value indicating whether to include contents of the dictionary. + + + + + + Gets or sets a value indicating whether to include contents of the stack. + + + + + + Interface for serialization of object values into JSON format + + + + + Serialization of an object into JSON format. + + The object to serialize to JSON. + Output destination. + Serialize succeeded (true/false) + + + Auto-generated Logger members for binary compatibility with NLog 1.0. + Provides logging interface and utility functions. - - Auto-generated Logger members for binary compatibility with NLog 1.0. - - - - - Logger with only generic methods (passing 'LogLevel' to methods) and core properties. - - - Auto-generated Logger members for binary compatibility with NLog 1.0. - - - - - Gets a value indicating whether logging is enabled for the specified level. - - Log level to be checked. - A value of if logging is enabled for the specified level, otherwise it returns . - - - - Writes the specified diagnostic message. - - Log event. - - - - Writes the specified diagnostic message. - - The name of the type that wraps Logger. - Log event. - - - - Writes the diagnostic message at the specified level using the specified format provider and format parameters. - - - Writes the diagnostic message at the specified level. - - Type of the value. - The log level. - The value to be written. - - - - Writes the diagnostic message at the specified level. - - Type of the value. - The log level. - An IFormatProvider that supplies culture-specific formatting information. - The value to be written. - - - - Writes the diagnostic message at the specified level. - - The log level. - A function returning message to be written. Function is not evaluated if logging is not enabled. - - - - Writes the diagnostic message and exception at the specified level. - - The log level. - A to be written. - An exception to be logged. - This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. - - - - Writes the diagnostic message and exception at the specified level. - - The log level. - A to be written. - Arguments to format. - An exception to be logged. - - - - Writes the diagnostic message and exception at the specified level. - - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A to be written. - Arguments to format. - An exception to be logged. - - - - Writes the diagnostic message at the specified level using the specified parameters and formatting them with the supplied format provider. - - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing format items. - Arguments to format. - - - - Writes the diagnostic message at the specified level. - - The log level. - Log message. - - - - Writes the diagnostic message at the specified level using the specified parameters. - - The log level. - A containing format items. - Arguments to format. - - - - Writes the diagnostic message and exception at the specified level. - - The log level. - A to be written. - An exception to be logged. - This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. - - - - Writes the diagnostic message at the specified level using the specified parameter and formatting it with the supplied format provider. - - The type of the argument. - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified parameter. - - The type of the argument. - The log level. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified arguments formatting it with the supplied format provider. - - The type of the first argument. - The type of the second argument. - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The first argument to format. - The second argument to format. - - - - Writes the diagnostic message at the specified level using the specified parameters. - - The type of the first argument. - The type of the second argument. - The log level. - A containing one format item. - The first argument to format. - The second argument to format. - - - - Writes the diagnostic message at the specified level using the specified arguments formatting it with the supplied format provider. - - The type of the first argument. - The type of the second argument. - The type of the third argument. - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The first argument to format. - The second argument to format. - The third argument to format. - - - - Writes the diagnostic message at the specified level using the specified parameters. - - The type of the first argument. - The type of the second argument. - The type of the third argument. - The log level. - A containing one format item. - The first argument to format. - The second argument to format. - The third argument to format. - - - - Writes the diagnostic message at the specified level. - - The log level. - A to be written. - - - - Writes the diagnostic message at the specified level. - - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A to be written. - - - - Writes the diagnostic message at the specified level using the specified parameters. - - The log level. - A containing format items. - First argument to format. - Second argument to format. - - - - Writes the diagnostic message at the specified level using the specified parameters. - - The log level. - A containing format items. - First argument to format. - Second argument to format. - Third argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. - - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter. - - The log level. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. - - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter. - - The log level. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. - - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter. - - The log level. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. - - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter. - - The log level. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. - - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter. - - The log level. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. - - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter. - - The log level. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. - - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter. - - The log level. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. - - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter. - - The log level. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. - - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter. - - The log level. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. - - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter. - - The log level. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. - - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter. - - The log level. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. - - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter. - - The log level. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. - - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified value as a parameter. - - The log level. - A containing one format item. - The argument to format. - - - - Occurs when logger configuration changes. - - - - - Gets the name of the logger. - - - - - Gets the factory that created this logger. - - - - - Provides an interface to execute System.Actions without surfacing any exceptions raised for that action. - - - - - Runs the provided action. If the action throws, the exception is logged at Error level. The exception is not propagated outside of this method. - - Action to execute. - - - - Runs the provided function and returns its result. If an exception is thrown, it is logged at Error level. - The exception is not propagated outside of this method; a default value is returned instead. - - Return type of the provided function. - Function to run. - Result returned by the provided function or the default value of type in case of exception. - - - - Runs the provided function and returns its result. If an exception is thrown, it is logged at Error level. - The exception is not propagated outside of this method; a fallback value is returned instead. - - Return type of the provided function. - Function to run. - Fallback value to return in case of exception. - Result returned by the provided function or fallback value in case of exception. - - - - Logs an exception is logged at Error level if the provided task does not run to completion. - - The task for which to log an error if it does not run to completion. - This method is useful in fire-and-forget situations, where application logic does not depend on completion of task. This method is avoids C# warning CS4014 in such situations. - - - - Returns a task that completes when a specified task to completes. If the task does not run to completion, an exception is logged at Error level. The returned task always runs to completion. - - The task for which to log an error if it does not run to completion. - A task that completes in the state when completes. - - - - Runs async action. If the action throws, the exception is logged at Error level. The exception is not propagated outside of this method. - - Async action to execute. - A task that completes in the state when completes. - - - - Runs the provided async function and returns its result. If the task does not run to completion, an exception is logged at Error level. - The exception is not propagated outside of this method; a default value is returned instead. - - Return type of the provided function. - Async function to run. - A task that represents the completion of the supplied task. If the supplied task ends in the state, the result of the new task will be the result of the supplied task; otherwise, the result of the new task will be the default value of type . - - - - Runs the provided async function and returns its result. If the task does not run to completion, an exception is logged at Error level. - The exception is not propagated outside of this method; a fallback value is returned instead. - - Return type of the provided function. - Async function to run. - Fallback value to return if the task does not end in the state. - A task that represents the completion of the supplied task. If the supplied task ends in the state, the result of the new task will be the result of the supplied task; otherwise, the result of the new task will be the fallback value. - - - - Writes the diagnostic message at the Trace level using the specified format provider and format parameters. - - - Writes the diagnostic message at the Trace level. - - Type of the value. - The value to be written. - - - - Writes the diagnostic message at the Trace level. - - Type of the value. - An IFormatProvider that supplies culture-specific formatting information. - The value to be written. - - - - Writes the diagnostic message at the Trace level. - - A function returning message to be written. Function is not evaluated if logging is not enabled. - - - - Writes the diagnostic message and exception at the Trace level. - - A to be written. - An exception to be logged. - This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. - - - - Writes the diagnostic message and exception at the Trace level. - - A to be written. - An exception to be logged. - - - - Writes the diagnostic message and exception at the Trace level. - - A to be written. - An exception to be logged. - Arguments to format. - - - - Writes the diagnostic message and exception at the Trace level. - - An IFormatProvider that supplies culture-specific formatting information. - A to be written. - An exception to be logged. - Arguments to format. - - - - Writes the diagnostic message at the Trace level using the specified parameters and formatting them with the supplied format provider. - - An IFormatProvider that supplies culture-specific formatting information. - A containing format items. - Arguments to format. - - - - Writes the diagnostic message at the Trace level. - - Log message. - - - - Writes the diagnostic message at the Trace level using the specified parameters. - - A containing format items. - Arguments to format. - - - - Writes the diagnostic message and exception at the Trace level. - - A to be written. - An exception to be logged. - This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. - - - - Writes the diagnostic message at the Trace level using the specified parameter and formatting it with the supplied format provider. - - The type of the argument. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the Trace level using the specified parameter. - - The type of the argument. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the Trace level using the specified arguments formatting it with the supplied format provider. - - The type of the first argument. - The type of the second argument. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The first argument to format. - The second argument to format. - - - - Writes the diagnostic message at the Trace level using the specified parameters. - - The type of the first argument. - The type of the second argument. - A containing one format item. - The first argument to format. - The second argument to format. - - - - Writes the diagnostic message at the Trace level using the specified arguments formatting it with the supplied format provider. - - The type of the first argument. - The type of the second argument. - The type of the third argument. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The first argument to format. - The second argument to format. - The third argument to format. - - - - Writes the diagnostic message at the Trace level using the specified parameters. - - The type of the first argument. - The type of the second argument. - The type of the third argument. - A containing one format item. - The first argument to format. - The second argument to format. - The third argument to format. - - - - Writes the diagnostic message at the Debug level using the specified format provider and format parameters. - - - Writes the diagnostic message at the Debug level. - - Type of the value. - The value to be written. - - - - Writes the diagnostic message at the Debug level. - - Type of the value. - An IFormatProvider that supplies culture-specific formatting information. - The value to be written. - - - - Writes the diagnostic message at the Debug level. - - A function returning message to be written. Function is not evaluated if logging is not enabled. - - - - Writes the diagnostic message and exception at the Debug level. - - A to be written. - An exception to be logged. - This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. - - - - Writes the diagnostic message and exception at the Debug level. - - A to be written. - An exception to be logged. - - - - Writes the diagnostic message and exception at the Debug level. - - A to be written. - An exception to be logged. - Arguments to format. - - - - Writes the diagnostic message and exception at the Debug level. - - An IFormatProvider that supplies culture-specific formatting information. - A to be written. - An exception to be logged. - Arguments to format. - - - - Writes the diagnostic message at the Debug level using the specified parameters and formatting them with the supplied format provider. - - An IFormatProvider that supplies culture-specific formatting information. - A containing format items. - Arguments to format. - - - - Writes the diagnostic message at the Debug level. - - Log message. - - - - Writes the diagnostic message at the Debug level using the specified parameters. - - A containing format items. - Arguments to format. - - - - Writes the diagnostic message and exception at the Debug level. - - A to be written. - An exception to be logged. - This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. - - - - Writes the diagnostic message at the Debug level using the specified parameter and formatting it with the supplied format provider. - - The type of the argument. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the Debug level using the specified parameter. - - The type of the argument. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the Debug level using the specified arguments formatting it with the supplied format provider. - - The type of the first argument. - The type of the second argument. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The first argument to format. - The second argument to format. - - - - Writes the diagnostic message at the Debug level using the specified parameters. - - The type of the first argument. - The type of the second argument. - A containing one format item. - The first argument to format. - The second argument to format. - - - - Writes the diagnostic message at the Debug level using the specified arguments formatting it with the supplied format provider. - - The type of the first argument. - The type of the second argument. - The type of the third argument. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The first argument to format. - The second argument to format. - The third argument to format. - - - - Writes the diagnostic message at the Debug level using the specified parameters. - - The type of the first argument. - The type of the second argument. - The type of the third argument. - A containing one format item. - The first argument to format. - The second argument to format. - The third argument to format. - - - - Writes the diagnostic message at the Info level using the specified format provider and format parameters. - - - Writes the diagnostic message at the Info level. - - Type of the value. - The value to be written. - - - - Writes the diagnostic message at the Info level. - - Type of the value. - An IFormatProvider that supplies culture-specific formatting information. - The value to be written. - - - - Writes the diagnostic message at the Info level. - - A function returning message to be written. Function is not evaluated if logging is not enabled. - - - - Writes the diagnostic message and exception at the Info level. - - A to be written. - An exception to be logged. - This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. - - - - Writes the diagnostic message and exception at the Info level. - - A to be written. - An exception to be logged. - - - - Writes the diagnostic message and exception at the Info level. - - A to be written. - An exception to be logged. - Arguments to format. - - - - Writes the diagnostic message and exception at the Info level. - - An IFormatProvider that supplies culture-specific formatting information. - A to be written. - An exception to be logged. - Arguments to format. - - - - Writes the diagnostic message at the Info level using the specified parameters and formatting them with the supplied format provider. - - An IFormatProvider that supplies culture-specific formatting information. - A containing format items. - Arguments to format. - - - - Writes the diagnostic message at the Info level. - - Log message. - - - - Writes the diagnostic message at the Info level using the specified parameters. - - A containing format items. - Arguments to format. - - - - Writes the diagnostic message and exception at the Info level. - - A to be written. - An exception to be logged. - This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. - - - - Writes the diagnostic message at the Info level using the specified parameter and formatting it with the supplied format provider. - - The type of the argument. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the Info level using the specified parameter. - - The type of the argument. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the Info level using the specified arguments formatting it with the supplied format provider. - - The type of the first argument. - The type of the second argument. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The first argument to format. - The second argument to format. - - - - Writes the diagnostic message at the Info level using the specified parameters. - - The type of the first argument. - The type of the second argument. - A containing one format item. - The first argument to format. - The second argument to format. - - - - Writes the diagnostic message at the Info level using the specified arguments formatting it with the supplied format provider. - - The type of the first argument. - The type of the second argument. - The type of the third argument. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The first argument to format. - The second argument to format. - The third argument to format. - - - - Writes the diagnostic message at the Info level using the specified parameters. - - The type of the first argument. - The type of the second argument. - The type of the third argument. - A containing one format item. - The first argument to format. - The second argument to format. - The third argument to format. - - - - Writes the diagnostic message at the Warn level using the specified format provider and format parameters. - - - Writes the diagnostic message at the Warn level. - - Type of the value. - The value to be written. - - - - Writes the diagnostic message at the Warn level. - - Type of the value. - An IFormatProvider that supplies culture-specific formatting information. - The value to be written. - - - - Writes the diagnostic message at the Warn level. - - A function returning message to be written. Function is not evaluated if logging is not enabled. - - - - Writes the diagnostic message and exception at the Warn level. - - A to be written. - An exception to be logged. - This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. - - - - Writes the diagnostic message and exception at the Warn level. - - A to be written. - An exception to be logged. - - - - Writes the diagnostic message and exception at the Warn level. - - A to be written. - An exception to be logged. - Arguments to format. - - - - Writes the diagnostic message and exception at the Warn level. - - An IFormatProvider that supplies culture-specific formatting information. - A to be written. - An exception to be logged. - Arguments to format. - - - - Writes the diagnostic message at the Warn level using the specified parameters and formatting them with the supplied format provider. - - An IFormatProvider that supplies culture-specific formatting information. - A containing format items. - Arguments to format. - - - - Writes the diagnostic message at the Warn level. - - Log message. - - - - Writes the diagnostic message at the Warn level using the specified parameters. - - A containing format items. - Arguments to format. - - - - Writes the diagnostic message and exception at the Warn level. - - A to be written. - An exception to be logged. - This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. - - - - Writes the diagnostic message at the Warn level using the specified parameter and formatting it with the supplied format provider. - - The type of the argument. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the Warn level using the specified parameter. - - The type of the argument. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the Warn level using the specified arguments formatting it with the supplied format provider. - - The type of the first argument. - The type of the second argument. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The first argument to format. - The second argument to format. - - - - Writes the diagnostic message at the Warn level using the specified parameters. - - The type of the first argument. - The type of the second argument. - A containing one format item. - The first argument to format. - The second argument to format. - - - - Writes the diagnostic message at the Warn level using the specified arguments formatting it with the supplied format provider. - - The type of the first argument. - The type of the second argument. - The type of the third argument. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The first argument to format. - The second argument to format. - The third argument to format. - - - - Writes the diagnostic message at the Warn level using the specified parameters. - - The type of the first argument. - The type of the second argument. - The type of the third argument. - A containing one format item. - The first argument to format. - The second argument to format. - The third argument to format. - - - - Writes the diagnostic message at the Error level using the specified format provider and format parameters. - - - Writes the diagnostic message at the Error level. - - Type of the value. - The value to be written. - - - - Writes the diagnostic message at the Error level. - - Type of the value. - An IFormatProvider that supplies culture-specific formatting information. - The value to be written. - - - - Writes the diagnostic message at the Error level. - - A function returning message to be written. Function is not evaluated if logging is not enabled. - - - - Writes the diagnostic message and exception at the Error level. - - A to be written. - An exception to be logged. - This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. - - - - Writes the diagnostic message and exception at the Error level. - - A to be written. - An exception to be logged. - - - - Writes the diagnostic message and exception at the Error level. - - A to be written. - An exception to be logged. - Arguments to format. - - - - Writes the diagnostic message and exception at the Error level. - - An IFormatProvider that supplies culture-specific formatting information. - A to be written. - An exception to be logged. - Arguments to format. - - - - Writes the diagnostic message at the Error level using the specified parameters and formatting them with the supplied format provider. - - An IFormatProvider that supplies culture-specific formatting information. - A containing format items. - Arguments to format. - - - - Writes the diagnostic message at the Error level. - - Log message. - - - - Writes the diagnostic message at the Error level using the specified parameters. - - A containing format items. - Arguments to format. - - - - Writes the diagnostic message and exception at the Error level. - - A to be written. - An exception to be logged. - This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. - - - - Writes the diagnostic message at the Error level using the specified parameter and formatting it with the supplied format provider. - - The type of the argument. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the Error level using the specified parameter. - - The type of the argument. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the Error level using the specified arguments formatting it with the supplied format provider. - - The type of the first argument. - The type of the second argument. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The first argument to format. - The second argument to format. - - - - Writes the diagnostic message at the Error level using the specified parameters. - - The type of the first argument. - The type of the second argument. - A containing one format item. - The first argument to format. - The second argument to format. - - - - Writes the diagnostic message at the Error level using the specified arguments formatting it with the supplied format provider. - - The type of the first argument. - The type of the second argument. - The type of the third argument. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The first argument to format. - The second argument to format. - The third argument to format. - - - - Writes the diagnostic message at the Error level using the specified parameters. - - The type of the first argument. - The type of the second argument. - The type of the third argument. - A containing one format item. - The first argument to format. - The second argument to format. - The third argument to format. - - - - Writes the diagnostic message at the Fatal level using the specified format provider and format parameters. - - - Writes the diagnostic message at the Fatal level. - - Type of the value. - The value to be written. - - - - Writes the diagnostic message at the Fatal level. - - Type of the value. - An IFormatProvider that supplies culture-specific formatting information. - The value to be written. - - - - Writes the diagnostic message at the Fatal level. - - A function returning message to be written. Function is not evaluated if logging is not enabled. - - - - Writes the diagnostic message and exception at the Fatal level. - - A to be written. - An exception to be logged. - This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. - - - - Writes the diagnostic message and exception at the Fatal level. - - A to be written. - An exception to be logged. - - - - Writes the diagnostic message and exception at the Fatal level. - - A to be written. - An exception to be logged. - Arguments to format. - - - - Writes the diagnostic message and exception at the Fatal level. - - An IFormatProvider that supplies culture-specific formatting information. - A to be written. - An exception to be logged. - Arguments to format. - - - - Writes the diagnostic message at the Fatal level using the specified parameters and formatting them with the supplied format provider. - - An IFormatProvider that supplies culture-specific formatting information. - A containing format items. - Arguments to format. - - - - Writes the diagnostic message at the Fatal level. - - Log message. - - - - Writes the diagnostic message at the Fatal level using the specified parameters. - - A containing format items. - Arguments to format. - - - - Writes the diagnostic message and exception at the Fatal level. - - A to be written. - An exception to be logged. - This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. - - - - Writes the diagnostic message at the Fatal level using the specified parameter and formatting it with the supplied format provider. - - The type of the argument. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the Fatal level using the specified parameter. - - The type of the argument. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the Fatal level using the specified arguments formatting it with the supplied format provider. - - The type of the first argument. - The type of the second argument. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The first argument to format. - The second argument to format. - - - - Writes the diagnostic message at the Fatal level using the specified parameters. - - The type of the first argument. - The type of the second argument. - A containing one format item. - The first argument to format. - The second argument to format. - - - - Writes the diagnostic message at the Fatal level using the specified arguments formatting it with the supplied format provider. - - The type of the first argument. - The type of the second argument. - The type of the third argument. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The first argument to format. - The second argument to format. - The third argument to format. - - - - Writes the diagnostic message at the Fatal level using the specified parameters. - - The type of the first argument. - The type of the second argument. - The type of the third argument. - A containing one format item. - The first argument to format. - The second argument to format. - The third argument to format. @@ -6794,6 +6483,1349 @@ A value of if logging is enabled for the Fatal level, otherwise it returns . + + + Writes the diagnostic message at the Trace level using the specified format provider and format parameters. + + + Writes the diagnostic message at the Trace level. + + Type of the value. + The value to be written. + + + + Writes the diagnostic message at the Trace level. + + Type of the value. + An IFormatProvider that supplies culture-specific formatting information. + The value to be written. + + + + Writes the diagnostic message at the Trace level. + + A function returning message to be written. Function is not evaluated if logging is not enabled. + + + + Writes the diagnostic message and exception at the Trace level. + + A to be written. + An exception to be logged. + This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. + + + + Writes the diagnostic message and exception at the Trace level. + + A to be written. + An exception to be logged. + + + + Writes the diagnostic message and exception at the Trace level. + + A to be written. + An exception to be logged. + Arguments to format. + + + + Writes the diagnostic message and exception at the Trace level. + + An IFormatProvider that supplies culture-specific formatting information. + A to be written. + An exception to be logged. + Arguments to format. + + + + Writes the diagnostic message at the Trace level using the specified parameters and formatting them with the supplied format provider. + + An IFormatProvider that supplies culture-specific formatting information. + A containing format items. + Arguments to format. + + + + Writes the diagnostic message at the Trace level. + + Log message. + + + + Writes the diagnostic message at the Trace level using the specified parameters. + + A containing format items. + Arguments to format. + + + + Writes the diagnostic message and exception at the Trace level. + + A to be written. + An exception to be logged. + This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. + + + + Writes the diagnostic message at the Trace level using the specified parameter and formatting it with the supplied format provider. + + The type of the argument. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the Trace level using the specified parameter. + + The type of the argument. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the Trace level using the specified arguments formatting it with the supplied format provider. + + The type of the first argument. + The type of the second argument. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The first argument to format. + The second argument to format. + + + + Writes the diagnostic message at the Trace level using the specified parameters. + + The type of the first argument. + The type of the second argument. + A containing one format item. + The first argument to format. + The second argument to format. + + + + Writes the diagnostic message at the Trace level using the specified arguments formatting it with the supplied format provider. + + The type of the first argument. + The type of the second argument. + The type of the third argument. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The first argument to format. + The second argument to format. + The third argument to format. + + + + Writes the diagnostic message at the Trace level using the specified parameters. + + The type of the first argument. + The type of the second argument. + The type of the third argument. + A containing one format item. + The first argument to format. + The second argument to format. + The third argument to format. + + + + Writes the diagnostic message at the Debug level using the specified format provider and format parameters. + + + Writes the diagnostic message at the Debug level. + + Type of the value. + The value to be written. + + + + Writes the diagnostic message at the Debug level. + + Type of the value. + An IFormatProvider that supplies culture-specific formatting information. + The value to be written. + + + + Writes the diagnostic message at the Debug level. + + A function returning message to be written. Function is not evaluated if logging is not enabled. + + + + Writes the diagnostic message and exception at the Debug level. + + A to be written. + An exception to be logged. + This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. + + + + Writes the diagnostic message and exception at the Debug level. + + A to be written. + An exception to be logged. + + + + Writes the diagnostic message and exception at the Debug level. + + A to be written. + An exception to be logged. + Arguments to format. + + + + Writes the diagnostic message and exception at the Debug level. + + An IFormatProvider that supplies culture-specific formatting information. + A to be written. + An exception to be logged. + Arguments to format. + + + + Writes the diagnostic message at the Debug level using the specified parameters and formatting them with the supplied format provider. + + An IFormatProvider that supplies culture-specific formatting information. + A containing format items. + Arguments to format. + + + + Writes the diagnostic message at the Debug level. + + Log message. + + + + Writes the diagnostic message at the Debug level using the specified parameters. + + A containing format items. + Arguments to format. + + + + Writes the diagnostic message and exception at the Debug level. + + A to be written. + An exception to be logged. + This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. + + + + Writes the diagnostic message at the Debug level using the specified parameter and formatting it with the supplied format provider. + + The type of the argument. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the Debug level using the specified parameter. + + The type of the argument. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the Debug level using the specified arguments formatting it with the supplied format provider. + + The type of the first argument. + The type of the second argument. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The first argument to format. + The second argument to format. + + + + Writes the diagnostic message at the Debug level using the specified parameters. + + The type of the first argument. + The type of the second argument. + A containing one format item. + The first argument to format. + The second argument to format. + + + + Writes the diagnostic message at the Debug level using the specified arguments formatting it with the supplied format provider. + + The type of the first argument. + The type of the second argument. + The type of the third argument. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The first argument to format. + The second argument to format. + The third argument to format. + + + + Writes the diagnostic message at the Debug level using the specified parameters. + + The type of the first argument. + The type of the second argument. + The type of the third argument. + A containing one format item. + The first argument to format. + The second argument to format. + The third argument to format. + + + + Writes the diagnostic message at the Info level using the specified format provider and format parameters. + + + Writes the diagnostic message at the Info level. + + Type of the value. + The value to be written. + + + + Writes the diagnostic message at the Info level. + + Type of the value. + An IFormatProvider that supplies culture-specific formatting information. + The value to be written. + + + + Writes the diagnostic message at the Info level. + + A function returning message to be written. Function is not evaluated if logging is not enabled. + + + + Writes the diagnostic message and exception at the Info level. + + A to be written. + An exception to be logged. + This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. + + + + Writes the diagnostic message and exception at the Info level. + + A to be written. + An exception to be logged. + + + + Writes the diagnostic message and exception at the Info level. + + A to be written. + An exception to be logged. + Arguments to format. + + + + Writes the diagnostic message and exception at the Info level. + + An IFormatProvider that supplies culture-specific formatting information. + A to be written. + An exception to be logged. + Arguments to format. + + + + Writes the diagnostic message at the Info level using the specified parameters and formatting them with the supplied format provider. + + An IFormatProvider that supplies culture-specific formatting information. + A containing format items. + Arguments to format. + + + + Writes the diagnostic message at the Info level. + + Log message. + + + + Writes the diagnostic message at the Info level using the specified parameters. + + A containing format items. + Arguments to format. + + + + Writes the diagnostic message and exception at the Info level. + + A to be written. + An exception to be logged. + This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. + + + + Writes the diagnostic message at the Info level using the specified parameter and formatting it with the supplied format provider. + + The type of the argument. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the Info level using the specified parameter. + + The type of the argument. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the Info level using the specified arguments formatting it with the supplied format provider. + + The type of the first argument. + The type of the second argument. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The first argument to format. + The second argument to format. + + + + Writes the diagnostic message at the Info level using the specified parameters. + + The type of the first argument. + The type of the second argument. + A containing one format item. + The first argument to format. + The second argument to format. + + + + Writes the diagnostic message at the Info level using the specified arguments formatting it with the supplied format provider. + + The type of the first argument. + The type of the second argument. + The type of the third argument. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The first argument to format. + The second argument to format. + The third argument to format. + + + + Writes the diagnostic message at the Info level using the specified parameters. + + The type of the first argument. + The type of the second argument. + The type of the third argument. + A containing one format item. + The first argument to format. + The second argument to format. + The third argument to format. + + + + Writes the diagnostic message at the Warn level using the specified format provider and format parameters. + + + Writes the diagnostic message at the Warn level. + + Type of the value. + The value to be written. + + + + Writes the diagnostic message at the Warn level. + + Type of the value. + An IFormatProvider that supplies culture-specific formatting information. + The value to be written. + + + + Writes the diagnostic message at the Warn level. + + A function returning message to be written. Function is not evaluated if logging is not enabled. + + + + Writes the diagnostic message and exception at the Warn level. + + A to be written. + An exception to be logged. + This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. + + + + Writes the diagnostic message and exception at the Warn level. + + A to be written. + An exception to be logged. + + + + Writes the diagnostic message and exception at the Warn level. + + A to be written. + An exception to be logged. + Arguments to format. + + + + Writes the diagnostic message and exception at the Warn level. + + An IFormatProvider that supplies culture-specific formatting information. + A to be written. + An exception to be logged. + Arguments to format. + + + + Writes the diagnostic message at the Warn level using the specified parameters and formatting them with the supplied format provider. + + An IFormatProvider that supplies culture-specific formatting information. + A containing format items. + Arguments to format. + + + + Writes the diagnostic message at the Warn level. + + Log message. + + + + Writes the diagnostic message at the Warn level using the specified parameters. + + A containing format items. + Arguments to format. + + + + Writes the diagnostic message and exception at the Warn level. + + A to be written. + An exception to be logged. + This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. + + + + Writes the diagnostic message at the Warn level using the specified parameter and formatting it with the supplied format provider. + + The type of the argument. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the Warn level using the specified parameter. + + The type of the argument. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the Warn level using the specified arguments formatting it with the supplied format provider. + + The type of the first argument. + The type of the second argument. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The first argument to format. + The second argument to format. + + + + Writes the diagnostic message at the Warn level using the specified parameters. + + The type of the first argument. + The type of the second argument. + A containing one format item. + The first argument to format. + The second argument to format. + + + + Writes the diagnostic message at the Warn level using the specified arguments formatting it with the supplied format provider. + + The type of the first argument. + The type of the second argument. + The type of the third argument. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The first argument to format. + The second argument to format. + The third argument to format. + + + + Writes the diagnostic message at the Warn level using the specified parameters. + + The type of the first argument. + The type of the second argument. + The type of the third argument. + A containing one format item. + The first argument to format. + The second argument to format. + The third argument to format. + + + + Writes the diagnostic message at the Error level using the specified format provider and format parameters. + + + Writes the diagnostic message at the Error level. + + Type of the value. + The value to be written. + + + + Writes the diagnostic message at the Error level. + + Type of the value. + An IFormatProvider that supplies culture-specific formatting information. + The value to be written. + + + + Writes the diagnostic message at the Error level. + + A function returning message to be written. Function is not evaluated if logging is not enabled. + + + + Writes the diagnostic message and exception at the Error level. + + A to be written. + An exception to be logged. + This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. + + + + Writes the diagnostic message and exception at the Error level. + + A to be written. + An exception to be logged. + + + + Writes the diagnostic message and exception at the Error level. + + A to be written. + An exception to be logged. + Arguments to format. + + + + Writes the diagnostic message and exception at the Error level. + + An IFormatProvider that supplies culture-specific formatting information. + A to be written. + An exception to be logged. + Arguments to format. + + + + Writes the diagnostic message at the Error level using the specified parameters and formatting them with the supplied format provider. + + An IFormatProvider that supplies culture-specific formatting information. + A containing format items. + Arguments to format. + + + + Writes the diagnostic message at the Error level. + + Log message. + + + + Writes the diagnostic message at the Error level using the specified parameters. + + A containing format items. + Arguments to format. + + + + Writes the diagnostic message and exception at the Error level. + + A to be written. + An exception to be logged. + This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. + + + + Writes the diagnostic message at the Error level using the specified parameter and formatting it with the supplied format provider. + + The type of the argument. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the Error level using the specified parameter. + + The type of the argument. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the Error level using the specified arguments formatting it with the supplied format provider. + + The type of the first argument. + The type of the second argument. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The first argument to format. + The second argument to format. + + + + Writes the diagnostic message at the Error level using the specified parameters. + + The type of the first argument. + The type of the second argument. + A containing one format item. + The first argument to format. + The second argument to format. + + + + Writes the diagnostic message at the Error level using the specified arguments formatting it with the supplied format provider. + + The type of the first argument. + The type of the second argument. + The type of the third argument. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The first argument to format. + The second argument to format. + The third argument to format. + + + + Writes the diagnostic message at the Error level using the specified parameters. + + The type of the first argument. + The type of the second argument. + The type of the third argument. + A containing one format item. + The first argument to format. + The second argument to format. + The third argument to format. + + + + Writes the diagnostic message at the Fatal level using the specified format provider and format parameters. + + + Writes the diagnostic message at the Fatal level. + + Type of the value. + The value to be written. + + + + Writes the diagnostic message at the Fatal level. + + Type of the value. + An IFormatProvider that supplies culture-specific formatting information. + The value to be written. + + + + Writes the diagnostic message at the Fatal level. + + A function returning message to be written. Function is not evaluated if logging is not enabled. + + + + Writes the diagnostic message and exception at the Fatal level. + + A to be written. + An exception to be logged. + This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. + + + + Writes the diagnostic message and exception at the Fatal level. + + A to be written. + An exception to be logged. + + + + Writes the diagnostic message and exception at the Fatal level. + + A to be written. + An exception to be logged. + Arguments to format. + + + + Writes the diagnostic message and exception at the Fatal level. + + An IFormatProvider that supplies culture-specific formatting information. + A to be written. + An exception to be logged. + Arguments to format. + + + + Writes the diagnostic message at the Fatal level using the specified parameters and formatting them with the supplied format provider. + + An IFormatProvider that supplies culture-specific formatting information. + A containing format items. + Arguments to format. + + + + Writes the diagnostic message at the Fatal level. + + Log message. + + + + Writes the diagnostic message at the Fatal level using the specified parameters. + + A containing format items. + Arguments to format. + + + + Writes the diagnostic message and exception at the Fatal level. + + A to be written. + An exception to be logged. + This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. + + + + Writes the diagnostic message at the Fatal level using the specified parameter and formatting it with the supplied format provider. + + The type of the argument. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the Fatal level using the specified parameter. + + The type of the argument. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the Fatal level using the specified arguments formatting it with the supplied format provider. + + The type of the first argument. + The type of the second argument. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The first argument to format. + The second argument to format. + + + + Writes the diagnostic message at the Fatal level using the specified parameters. + + The type of the first argument. + The type of the second argument. + A containing one format item. + The first argument to format. + The second argument to format. + + + + Writes the diagnostic message at the Fatal level using the specified arguments formatting it with the supplied format provider. + + The type of the first argument. + The type of the second argument. + The type of the third argument. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The first argument to format. + The second argument to format. + The third argument to format. + + + + Writes the diagnostic message at the Fatal level using the specified parameters. + + The type of the first argument. + The type of the second argument. + The type of the third argument. + A containing one format item. + The first argument to format. + The second argument to format. + The third argument to format. + + + + Auto-generated Logger members for binary compatibility with NLog 1.0. + + + Logger with only generic methods (passing 'LogLevel' to methods) and core properties. + + + + + Writes the diagnostic message at the specified level. + + The log level. + A to be written. + + + + Writes the diagnostic message at the specified level. + + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A to be written. + + + + Writes the diagnostic message at the specified level using the specified parameters. + + The log level. + A containing format items. + First argument to format. + Second argument to format. + + + + Writes the diagnostic message at the specified level using the specified parameters. + + The log level. + A containing format items. + First argument to format. + Second argument to format. + Third argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. + + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter. + + The log level. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. + + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter. + + The log level. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. + + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter. + + The log level. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. + + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter. + + The log level. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. + + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter. + + The log level. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. + + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter. + + The log level. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. + + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter. + + The log level. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. + + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter. + + The log level. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. + + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter. + + The log level. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. + + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter. + + The log level. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. + + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter. + + The log level. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. + + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter. + + The log level. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter and formatting it with the supplied format provider. + + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified value as a parameter. + + The log level. + A containing one format item. + The argument to format. + + + + Occurs when logger configuration changes. + + + + + Gets the name of the logger. + + + + + Gets the factory that created this logger. + + + + + Gets a value indicating whether logging is enabled for the specified level. + + Log level to be checked. + A value of if logging is enabled for the specified level, otherwise it returns . + + + + Writes the specified diagnostic message. + + Log event. + + + + Writes the specified diagnostic message. + + The name of the type that wraps Logger. + Log event. + + + + Writes the diagnostic message at the specified level using the specified format provider and format parameters. + + + Writes the diagnostic message at the specified level. + + Type of the value. + The log level. + The value to be written. + + + + Writes the diagnostic message at the specified level. + + Type of the value. + The log level. + An IFormatProvider that supplies culture-specific formatting information. + The value to be written. + + + + Writes the diagnostic message at the specified level. + + The log level. + A function returning message to be written. Function is not evaluated if logging is not enabled. + + + + Writes the diagnostic message and exception at the specified level. + + The log level. + A to be written. + An exception to be logged. + This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. + + + + Writes the diagnostic message and exception at the specified level. + + The log level. + A to be written. + Arguments to format. + An exception to be logged. + + + + Writes the diagnostic message and exception at the specified level. + + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A to be written. + Arguments to format. + An exception to be logged. + + + + Writes the diagnostic message at the specified level using the specified parameters and formatting them with the supplied format provider. + + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing format items. + Arguments to format. + + + + Writes the diagnostic message at the specified level. + + The log level. + Log message. + + + + Writes the diagnostic message at the specified level using the specified parameters. + + The log level. + A containing format items. + Arguments to format. + + + + Writes the diagnostic message and exception at the specified level. + + The log level. + A to be written. + An exception to be logged. + This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. + + + + Writes the diagnostic message at the specified level using the specified parameter and formatting it with the supplied format provider. + + The type of the argument. + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified parameter. + + The type of the argument. + The log level. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified arguments formatting it with the supplied format provider. + + The type of the first argument. + The type of the second argument. + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The first argument to format. + The second argument to format. + + + + Writes the diagnostic message at the specified level using the specified parameters. + + The type of the first argument. + The type of the second argument. + The log level. + A containing one format item. + The first argument to format. + The second argument to format. + + + + Writes the diagnostic message at the specified level using the specified arguments formatting it with the supplied format provider. + + The type of the first argument. + The type of the second argument. + The type of the third argument. + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The first argument to format. + The second argument to format. + The third argument to format. + + + + Writes the diagnostic message at the specified level using the specified parameters. + + The type of the first argument. + The type of the second argument. + The type of the third argument. + The log level. + A containing one format item. + The first argument to format. + The second argument to format. + The third argument to format. + Extensions for NLog . @@ -6861,11 +7893,36 @@ Allocates new builder and appends to the provided target builder on dispose - + Access the new builder allocated + + + Helpers for . + + + + + Load from url + + file or path, including .dll + basepath, optional + + + + + Load from url + + name without .dll + + + + + Forward declare of system delegate type for use by other classes + + Keeps track of pending operation count, and can notify when pending operation count reaches zero @@ -6894,6 +7951,80 @@ Clear o + + + Sets the stack trace for the event info. + + The stack trace. + Index of the first user stack frame within the stack trace. + Type of the logger or logger wrapper. This is still Logger if it's a subclass of Logger. + + + + Sets the details retrieved from the Caller Information Attributes + + + + + + + + + Gets the stack frame of the method that did the logging. + + + + + Gets the number index of the stack frame that represents the user + code (not the NLog code). + + + + + Legacy attempt to skip async MoveNext, but caused source file line number to be lost + + + + + Gets the entire stack trace. + + + + + Finds first user stack frame in a stack trace + + The stack trace of the logging method invocation + Type of the logger or logger wrapper. This is still Logger if it's a subclass of Logger. + Index of the first user stack frame or 0 if all stack frames are non-user + + + + This is only done for legacy reason, as the correct method-name and line-number should be extracted from the MoveNext-StackFrame + + The stack trace of the logging method invocation + Starting point for skipping async MoveNext-frames + + + + Assembly to skip? + + Find assembly via this frame. + true, we should skip. + + + + Is this the type of the logger? + + get type of this logger in this frame. + Type of the logger. + + + + + Memory optimized filtering + + Passing state too avoid delegate capture and memory-allocations. + Internal configuration manager used to read .NET configuration files. @@ -6901,16 +8032,6 @@ unit testing. - - - Interface for the wrapper around System.Configuration.ConfigurationManager. - - - - - Gets the wrapper around ConfigurationManager.AppSettings. - - Gets the wrapper around ConfigurationManager.AppSettings. @@ -6929,56 +8050,6 @@ The implementation. - - - Adds an element with the provided key and value to the object. - - The to use as the key of the element to add. - The to use as the value of the element to add. - - - - Removes all elements from the object. - - - - - Determines whether the object contains an element with the specified key. - - The key to locate in the object. - - True if the contains an element with the key; otherwise, false. - - - - - Returns an object for the object. - - - An object for the object. - - - - - Removes the element with the specified key from the object. - - The key of the element to remove. - - - - Copies the elements of the to an , starting at a particular index. - - The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. - The zero-based index in at which copying begins. - - - - Returns an enumerator that iterates through a collection. - - - An object that can be used to iterate through the collection. - - Gets an object containing the values in the object. @@ -7046,6 +8117,56 @@ Dictionary key. Value corresponding to key or null if not found + + + Adds an element with the provided key and value to the object. + + The to use as the key of the element to add. + The to use as the value of the element to add. + + + + Removes all elements from the object. + + + + + Determines whether the object contains an element with the specified key. + + The key to locate in the object. + + True if the contains an element with the key; otherwise, false. + + + + + Returns an object for the object. + + + An object for the object. + + + + + Removes the element with the specified key from the object. + + The key of the element to remove. + + + + Copies the elements of the to an , starting at a particular index. + + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + Wrapper IDictionaryEnumerator. @@ -7053,23 +8174,10 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The wrapped. - - - Advances the enumerator to the next element of the collection. - - - True if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. - - - - - Sets the enumerator to its initial position, which is before the first element in the collection. - - Gets both the key and the value of the current dictionary entry. @@ -7106,40 +8214,29 @@ The current element in the collection. + + + Advances the enumerator to the next element of the collection. + + + True if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + + + Ensures that IDictionary.GetEnumerator returns DictionaryEntry values + + UTF-8 BOM 239, 187, 191 - - - Converts the string representation of the name or numeric value of one or more enumerated constants to an equivalent enumerated object. A parameter specifies whether the operation is case-sensitive. The return value indicates whether the conversion succeeded. - - The enumeration type to which to convert value. - The string representation of the enumeration name or underlying value to convert. - When this method returns, result contains an object of type TEnum whose value is represented by value if the parse operation succeeds. If the parse operation fails, result contains the default value of the underlying type of TEnum. Note that this value need not be a member of the TEnum enumeration. This parameter is passed uninitialized. - true if the value parameter was converted successfully; otherwise, false. - Wrapper because Enum.TryParse is not present in .net 3.5 - - - - Converts the string representation of the name or numeric value of one or more enumerated constants to an equivalent enumerated object. A parameter specifies whether the operation is case-sensitive. The return value indicates whether the conversion succeeded. - - The enumeration type to which to convert value. - The string representation of the enumeration name or underlying value to convert. - true to ignore case; false to consider case. - When this method returns, result contains an object of type TEnum whose value is represented by value if the parse operation succeeds. If the parse operation fails, result contains the default value of the underlying type of TEnum. Note that this value need not be a member of the TEnum enumeration. This parameter is passed uninitialized. - true if the value parameter was converted successfully; otherwise, false. - Wrapper because Enum.TryParse is not present in .net 3.5 - - - - Enum.TryParse implementation for .net 3.5 - - - - Don't uses reflection - Safe way to get environment variables. @@ -7164,13 +8261,14 @@ trueif the has been logged to the . - + Determines whether the exception must be rethrown and logs the error to the if is false. Advised to log first the error to the before calling this method. The exception to check. + Target context of the exception. trueif the must be rethrown, false otherwise. @@ -7192,46 +8290,6 @@ Adapter for to - - - Interface for fakeable the current . Not fully implemented, please methods/properties as necessary. - - - - - Gets or sets the base directory that the assembly resolver uses to probe for assemblies. - - - - - Gets or sets the name of the configuration file for an application domain. - - - - - Gets or sets the list of directories under the application base directory that are probed for private assemblies. - - - - - Gets or set the friendly name. - - - - - Gets an integer that uniquely identifies the application domain within the process. - - - - - Process exit event. - - - - - Domain unloaded event. - - Initializes a new instance of the class. @@ -7240,7 +8298,7 @@ - Gets a the current wrappered in a . + Creates an AppDomainWrapper for the current @@ -7268,6 +8326,12 @@ Gets an integer that uniquely identifies the application domain within the process. + + + Gets the assemblies that have been loaded into the execution context of this application domain. + + A list of assemblies in this application domain. + Process exit event. @@ -7278,6 +8342,111 @@ Domain unloaded event. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Interface for fakeable the current . Not fully implemented, please methods/properties as necessary. + + + + + Gets or sets the base directory that the assembly resolver uses to probe for assemblies. + + + + + Gets or sets the name of the configuration file for an application domain. + + + + + Gets or sets the list of directories under the application base directory that are probed for private assemblies. + + + + + Gets or set the friendly name. + + + + + Gets an integer that uniquely identifies the application domain within the process. + + + + + Gets the assemblies that have been loaded into the execution context of this application domain. + + A list of assemblies in this application domain. + + + + Process exit event. + + + + + Domain unloaded event. + + + + + Abstract calls for the application environment + + + + + Gets current process name (excluding filename extension, if any). + + + + + Abstract calls to FileSystem + + + + Determines whether the specified file exists. + The file to check. + + + Returns the content of the specified file + The file to load. + Base class for optimized file appenders. @@ -7285,11 +8454,43 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the file. The create parameters. + + + Gets the path of the file, including file extension. + + The name of the file. + + + + Gets or sets the creation time for a file associated with the appender. The time returned is in Coordinated + Universal Time [UTC] standard. + + The creation time of the file. + + + + Gets or sets the creation time for a file associated with the appender. Synchronized by + The time format is based on + + + + + Gets the last time the file associated with the appender is opened. The time returned is in Coordinated + Universal Time [UTC] standard. + + The time the file was last opened. + + + + Gets the file creation parameters. + + The file creation parameters. + Writes the specified bytes. @@ -7313,16 +8514,9 @@ The file creation time. - - - Gets the last time the file associated with the appeander is written. The time returned is in Coordinated - Universal Time [UTC] standard. - - The time the file was last written to. - - Gets the length in bytes of the file associated with the appeander. + Gets the length in bytes of the file associated with the appender. A long value representing the length of the file in bytes. @@ -7337,63 +8531,14 @@ True to release both managed and unmanaged resources; false to release only unmanaged resources. - - - Updates the last write time of the file. - - - - - Updates the last write time of the file to the specified date. - - Date and time when the last write occurred in UTC. - - + Creates the file stream. If set to true sets the file stream to allow shared writing. + If larger than 0 then it will be used instead of the default BufferSize for the FileStream. A object which can be used to write to the file. - - - Gets the path of the file, including file extension. - - The name of the file. - - - - Gets or sets the creation time for a file associated with the appender. The time returned is in Coordinated - Universal Time [UTC] standard. - - The creation time of the file. - - - - Gets or sets the creation time for a file associated with the appender. Synchronized by - The time format is based on - - - - - Gets the last time the file associated with the appeander is opened. The time returned is in Coordinated - Universal Time [UTC] standard. - - The time the file was last opened. - - - - Gets the last time the file associated with the appeander is written. The time returned is in - Coordinated Universal Time [UTC] standard. - - The time the file was last written to. - - - - Gets the file creation parameters. - - The file creation parameters. - Base class for optimized file appenders which require the usage of a mutex. @@ -7404,22 +8549,22 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the file. The create parameters. - + - Creates a mutually-exclusive lock for archiving files. + Gets the mutually-exclusive lock for archiving files. - A object which can be used for controlling the archiving of files. + The mutex for archiving. - + - Creates a mutex for archiving that is sharable by more than one process. + Releases unmanaged and - optionally - managed resources. - A object which can be used for controlling the archiving of files. + True to release both managed and unmanaged resources; false to release only unmanaged resources. @@ -7428,12 +8573,6 @@ The prefix to use for the name of the mutex. A object which is sharable by multiple processes. - - - Gets the mutually-exclusive lock for archiving files. - - The mutex for archiving. - Implementation of which caches @@ -7442,7 +8581,7 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the file. The parameters. @@ -7464,16 +8603,9 @@ The file creation time. - - - Gets the last time the file associated with the appeander is written. The time returned is in Coordinated - Universal Time [UTC] standard. - - The time the file was last written to. - - Gets the length in bytes of the file associated with the appeander. + Gets the length in bytes of the file associated with the appender. A long value representing the length of the file in bytes. @@ -7490,19 +8622,6 @@ Factory class which creates objects. - - - Interface implemented by all factories capable of creating file appenders. - - - - - Opens the appender for given file name and parameters. - - Name of the file. - Creation parameters. - Instance of which can be used to write to the file. - Opens the appender for given file name and parameters. @@ -7534,56 +8653,23 @@ Initializes a new instance of the class. - The size of the list should be positive. No validations are performed during initialisation as it is an - intenal class. + The size of the list should be positive. No validations are performed during initialization as it is an + internal class. Total number of appenders allowed in list. Factory used to create each appender. Parameters used for creating a file. - - - Invalidates appenders for all files that were archived. - - - - - It allocates the first slot in the list when the file name does not already in the list and clean up any - unused slots. - - File name associated with a single appender. - The allocated appender. - - Thrown when is called on an Empty instance. - - - - - Close all the allocated appenders. - - - - - Close the allocated appenders initialised before the supplied time. - - The time which prior the appenders considered expired - - - - Fluch all the allocated appenders. - - - - - Closes the specified appender and removes it from the list. - - File name of the appender to be closed. - The archive file path pattern that is used to detect when archiving occurs. + + + Invalidates appenders for all files that were archived. + + Gets the parameters which will be used for creating a file. @@ -7604,6 +8690,48 @@ Subscribe to background monitoring of active file appenders + + + It allocates the first slot in the list when the file name does not already in the list and clean up any + unused slots. + + File name associated with a single appender. + The allocated appender. + + Thrown when is called on an Empty instance. + + + + + Close all the allocated appenders. + + + + + Close the allocated appenders initialized before the supplied time. + + The time which prior the appenders considered expired + + + + Flush all the allocated appenders. + + + + + File Archive Logic uses the File-Creation-TimeStamp to detect if time to archive, and the File-LastWrite-Timestamp to name the archive-file. + + + NLog always closes all relevant appenders during archive operation, so no need to lookup file-appender + + + + + Closes the specified appender and removes it from the list. + + File name of the appender to be closed. + File Appender that matched the filePath (null if none found) + Interface that provides parameters for create file function. @@ -7658,14 +8786,104 @@ Gets or sets the file attributes (Windows only). - + - Should we capture the last write time of a file? + Should archive mutex be created? + + + Should manual simple detection of file deletion be enabled? + + + + + Gets the parameters which will be used for creating a file. + + + + + Gets the file appender factory used by all the appenders in this list. + + + + + Gets the number of appenders which the list can hold. + + + + + Subscribe to background monitoring of active file appenders + + + + + It allocates the first slot in the list when the file name does not already in the list and clean up any + unused slots. + + File name associated with a single appender. + The allocated appender. + + Thrown when is called on an Empty instance. + + + + + Close all the allocated appenders. + + + + + Close the allocated appenders initialized before the supplied time. + + The time which prior the appenders considered expired + + + + Flush all the allocated appenders. + + + + + File Archive Logic uses the File-Creation-TimeStamp to detect if time to archive, and the File-LastWrite-Timestamp to name the archive-file. + + + NLog always closes all relevant appenders during archive operation, so no need to lookup file-appender + + + + + Closes the specified appender and removes it from the list. + + File name of the appender to be closed. + File Appender that matched the filePath (null if none found) + + + + The archive file path pattern that is used to detect when archiving occurs. + + + + + Invalidates appenders for all files that were archived. + + + + + Interface implemented by all factories capable of creating file appenders. + + + + + Opens the appender for given file name and parameters. + + Name of the file. + Creation parameters. + Instance of which can be used to write to the file. + - Provides a multiprocess-safe atomic file appends while + Provides a multi process-safe atomic file appends while keeping the files open. @@ -7678,7 +8896,7 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the file. The parameters. @@ -7708,25 +8926,12 @@ The file creation time. - - - Gets the last time the file associated with the appeander is written. The time returned is in Coordinated - Universal Time [UTC] standard. - - The time the file was last written to. - - Gets the length in bytes of the file associated with the appeander. + Gets the length in bytes of the file associated with the appender. A long value representing the length of the file in bytes. - - - Creates a mutually-exclusive lock for archiving files. - - A object which can be used for controlling the archiving of files. - Factory class. @@ -7772,7 +8977,7 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the file. The parameters. @@ -7802,25 +9007,12 @@ The file creation time. - - - Gets the last time the file associated with the appeander is written. The time returned is in Coordinated - Universal Time [UTC] standard. - - The time the file was last written to. - - Gets the length in bytes of the file associated with the appeander. + Gets the length in bytes of the file associated with the appender. A long value representing the length of the file in bytes. - - - Creates a mutually-exclusive lock for archiving files. - - A object which can be used for controlling the archiving of files. - Factory class. @@ -7843,7 +9035,7 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the file. The parameters. @@ -7873,16 +9065,9 @@ The file creation time. - - - Gets the last time the file associated with the appeander is written. The time returned is in Coordinated - Universal Time [UTC] standard. - - The time the file was last written to. - - Gets the length in bytes of the file associated with the appeander. + Gets the length in bytes of the file associated with the appender. A long value representing the length of the file in bytes. @@ -7903,13 +9088,13 @@ - Provides a multiprocess-safe atomic file append while + Provides a multi process-safe atomic file append while keeping the files open. - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the file. The parameters. @@ -7922,12 +9107,6 @@ File to create or open - - - Creates a mutually-exclusive lock for archiving files. - - A object which can be used for controlling the archiving of files. - Writes the specified bytes. @@ -7948,7 +9127,7 @@ - Gets the length in bytes of the file associated with the appeander. + Gets the length in bytes of the file associated with the appender. A long value representing the length of the file in bytes. @@ -7967,69 +9146,11 @@ Instance of which can be used to write to the file. - - - An immutable object that stores basic file info. - - - - - Constructs a FileCharacteristics object. - - The time the file was created in UTC. - The time the file was last written to in UTC. - The size of the file in bytes. - - - - The time the file was created in UTC. - - - - - The time the file was last written to in UTC. - - - - - The size of the file in bytes. - - - - - Optimized routines to get the basic file characteristics of the specified file. - - - - - Initializes static members of the FileCharacteristicsHelper class. - - - - - Gets the information about a file. - - Name of the file. - The file stream. - The file characteristics, if the file information was retrieved successfully, otherwise null. - A layout that represents a filePath. - - - Interface implemented by layouts and layout renderers. - - - - - Renders the the value of layout or layout renderer in the context of the specified log event. - - The log event. - String representation of a layout. - Cached directory separator char array to avoid memory allocation on each method call. @@ -8037,7 +9158,7 @@ - Cached invalid filenames char array to avoid memory allocation everytime Path.GetInvalidFileNameChars() is called. + Cached invalid file names char array to avoid memory allocation every time Path.GetInvalidFileNameChars() is called. @@ -8045,7 +9166,7 @@ not null when == false - + non null is fixed, @@ -8090,15 +9211,6 @@ Is this (templated/invalid) path an absolute, relative or unknown? - - - toString(format) if the object is a - - value to be converted - format value - provider, for example culture - - Convert object to string @@ -8110,20 +9222,72 @@ If is null and isn't a already, then the will get a locked by + + + Interface for the wrapper around System.Configuration.ConfigurationManager. + + + + + Gets the wrapper around ConfigurationManager.AppSettings. + + + + + Format a log message + + + + + Format the message and return + + LogEvent with message to be formatted + formatted message + + + + Has the logevent properties? + + LogEvent with message to be formatted + False when logevent has no properties to be extracted + + + + Appends the logevent message to the provided StringBuilder + + LogEvent with message to be formatted + The to append the formatted message. + + + + Get the Raw, unformatted and unstrinyfied, value + + + + + Get the raw value + + + The value + RawValue supported? + + + + Interface implemented by layouts and layout renderers. + + + + + Renders the the value of layout or layout renderer in the context of the specified log event. + + The log event. + String representation of a layout. + Supports mocking of SMTP Client code. - - - Sends an e-mail message to an SMTP server for delivery. These methods block while the message is being transmitted. - - - System.Net.Mail.MailMessage - MailMessage - A MailMessage that contains the message to send. - Specifies how outgoing email messages will be handled. @@ -8149,11 +9313,32 @@ Gets or sets the credentials used to authenticate the sender. + + + Sends an e-mail message to an SMTP server for delivery. These methods block while the message is being transmitted. + + + System.Net.Mail.MailMessage + MailMessage + A MailMessage that contains the message to send. + Gets or sets the folder where applications save mail messages to be processed by the local SMTP server. + + + Supports rendering as string value with limited or no allocations (preferred) + + + + + Renders the value of layout renderer in the context of the specified log event + + + null if not possible or unknown + Supports object initialization and termination. @@ -8217,11 +9402,16 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The targets by level. - Use the old exception log handling of NLog 3.0? - + Use the old exception log handling of NLog 3.0? + + + + Use the old exception log handling of NLog 3.0? + + This method was marked as obsolete before NLog 4.3.11 and it will be removed in NLog 5. @@ -8230,20 +9420,52 @@ The level. Chain of targets with attached filters. - + - Determines whether the specified level is enabled. + When true: Do not fallback to StringBuilder.Format for positional templates - The level. - - A value of true if the specified level is enabled; otherwise, false. - - + - Use the old exception log handling of NLog 3.0? + New formatter - This method was marked as obsolete before NLog 4.3.11 and it will be removed in NLog 5. + When true: Do not fallback to StringBuilder.Format for positional templates + + + + + The MessageFormatter delegate + + + + + + + + Most-Recently-Used-Cache, that discards less frequently used items on overflow + + + + + Constructor + + Maximum number of items the cache will hold before discarding. + + + + Attempt to insert item into cache. + + Key of the item to be inserted in the cache. + Value of the item to be inserted in the cache. + true when the key does not already exist in the cache, false otherwise. + + + + Lookup existing item in cache. + + Key of the item to be searched in the cache. + Output value of the item found in the cache. + True when the key is found in the cache, false otherwise. @@ -8251,6 +9473,16 @@ a single change is detected in any of those files. + + + The types of changes to watch for. + + + + + Occurs when a change is detected in one of the monitored files. + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. @@ -8273,16 +9505,6 @@ The file names. - - - The types of changes to watch for. - - - - - Occurs when a change is detected in one of the monitored files. - - Supports mocking of SMTP Client code. @@ -8297,6 +9519,34 @@ Network sender which uses HTTP or HTTPS POST. + + + Initializes a new instance of the class. + + The network URL. + + + + Creates instances of objects for given URLs. + + + + + Creates a new instance of the network sender based on a network URL. + + URL that determines the network sender to be created. + The maximum queue size. + SSL protocols for TCP + KeepAliveTime for TCP + + A newly created network sender. + + + + + Interface for mocking socket calls. + + A base class for all network senders. Supports one-way sending of messages @@ -8305,10 +9555,20 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The network URL. + + + Gets the address of the network endpoint. + + + + + Gets the last send time. + + Initializes this network sender. @@ -8375,23 +9635,26 @@ The address family. Parsed endpoint. - + - Gets the address of the network endpoint. + Default implementation of . - + + + + - Gets the last send time. + A base class for network senders that can block or send out-of-order - + - Initializes a new instance of the class. + Initializes a new instance of the class. - The network URL. + URL. Must start with tcp://. - + Actually sends the given text over the specified protocol. @@ -8401,48 +9664,11 @@ The async continuation to be invoked after the buffer has been sent. To be overridden in inheriting classes. - + - Creates instances of objects for given URLs. + Performs sender-specific flush. - - - - Creates a new instance of the network sender based on a network URL. - - - URL that determines the network sender to be created. - - - The maximum queue size. - - - A newly created network sender. - - - - - Interface for mocking socket calls. - - - - - Default implementation of . - - - - - Creates a new instance of the network sender based on a network URL:. - - - URL that determines the network sender to be created. - - - The maximum queue size. - - /// - A newly created network sender. - + The continuation. @@ -8457,6 +9683,11 @@ Type of the socket. Type of the protocol. + + + Gets underlying socket instance. + + Closes the wrapped socket. @@ -8488,11 +9719,6 @@ Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. - - - Gets underlying socket instance. - - Sends messages over a TCP network connection. @@ -8505,14 +9731,15 @@ URL. Must start with tcp://. The address family. - + Creates the socket with given parameters. + The host address. The address family. Type of the socket. Type of the protocol. - Instance of which represents the socket. + Instance of which represents the socket. @@ -8525,22 +9752,6 @@ The continuation. - - - Performs sender-specific flush. - - The continuation. - - - - Sends the specified text over the connected socket. - - The bytes to be sent. - Offset in buffer. - Number of bytes to send. - The async continuation to be invoked after the buffer has been sent. - To be overridden in inheriting classes. - Facilitates mocking of class. @@ -8600,18 +9811,65 @@ all objects implementing a specified interfaces. - + Finds the objects which have attached which are reachable from any of the given root objects when traversing the object graph over public properties. Type of the objects to return. + Also search the properties of the wanted objects. The root objects. Ordered list of objects implementing T. - + ISet is not there in .net35, so using HashSet + + + Helper for extracting propertyPath + + + + + Object Path to check + + + + + Try get value from , using , and set into + + + + + + + + Converts object into a List of property-names and -values using reflection + + + + + Scans properties for name (Skips string-compare and value-lookup until finding match) + + + + + Scans properties for name (Skips property value lookup until finding match) + + + + + Scans properties for name + + + + + Binder for retrieving value of + + + + + Combine paths @@ -8621,6 +9879,18 @@ optional file + + + Cached directory separator char array to avoid memory allocation on each method call. + + + + + Trims directory separators from the path + + path, could be null + never null + Detects the platform the NLog is running on. @@ -8631,11 +9901,6 @@ Gets the current runtime OS. - - - Gets a value indicating whether current OS is a desktop version of Windows. - - Gets a value indicating whether current OS is Win32-based (desktop or mobile). @@ -8656,83 +9921,177 @@ Gets a value indicating whether current runtime supports use of mutex - + - Portable implementation of . + Will creating a mutex succeed runtime? + "Cached" detection - + - Gets the information about a file. - - Name of the file. - The file stream. - The file characteristics, if the file information was retrieved successfully, otherwise null. - - - - Portable implementation of . + Will creating a mutex succeed runtime? - + - Returns details about current process and thread in a portable manner. + Dictionary that combines the standard with the + MessageTemplate-properties extracted from the . + + The are returned as the first items + in the collection, and in positional order. - + - Initializes static members of the ThreadIDHelper class. + Value of the property - + - Gets the singleton instance of PortableThreadIDHelper or - Win32ThreadIDHelper depending on runtime environment. - - The instance. - - - - Gets current process ID. + Is this a property of the message? - + - Gets current process name. + + + Value of the property + Is this a property of the message? + + + + The properties of the logEvent - + - Gets current process name (excluding filename extension, if any). + The properties extracted from the message - + - Initializes a new instance of the class. + Wraps the list of message-template-parameters into the IDictionary-interface + Message-template-parameters - + - Gets the name of the process. + Transforms the list of event-properties into IDictionary-interface + Message-template-parameters - - - Gets current process ID. - - + + - - - Gets current process name. - - + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Gets current process name (excluding filename extension, if any). + Check if the message-template-parameters can be used directly without allocating a dictionary - + Message-template-parameters + Are all parameter names unique (true / false) + + + + Attempt to insert the message-template-parameters into an empty dictionary + + Message-template-parameters + The initially empty dictionary + Message-template-parameters was inserted into dictionary without trouble (true/false) + + + + Attempt to override the existing dictionary values using the message-template-parameters + + Message-template-parameters + The already filled dictionary + List of unique message-template-parameters + + + + + + + + + + + + + + + + + + + + + Will always throw, as collection is readonly + + + Will always throw, as collection is readonly + + + Will always throw, as collection is readonly + + + + + + + + + + + + + + + @@ -8748,34 +10107,32 @@ The value to be parsed. - - - Is the property of array-type? - - Type which has the property - name of the property. - - - Get propertyinfo + Get property info object which could have property - propertyname on + property name on result when success. success. - + Try parse of string to (Generic) list, comma separated. If there is a comma in the value, then (single) quote the value. For single quotes, use the backslash as escape - - - - + + + + Attempt to reuse the HashSet.Comparer from the original HashSet-object (Ex. StringComparer.OrdinalIgnoreCase) + + + + + Try get the property + @@ -8797,16 +10154,9 @@ This is a work around, as Type doesn't have this property. - From: http://stackoverflow.com/questions/1175888/determine-if-a-type-is-static + From: https://stackoverflow.com/questions/1175888/determine-if-a-type-is-static - - - Creates an optimized delegate for calling the MethodInfo using Expression-Trees - - Method to optimize - Optimized delegate for invoking the MethodInfo - Optimized delegate for calling MethodInfo @@ -8815,11 +10165,53 @@ Complete list of parameters that matches the method, including optional/default parameters. + + + Creates an optimized delegate for calling the MethodInfo using Expression-Trees + + Method to optimize + Optimized delegate for invoking the MethodInfo + + + + Creates an optimized delegate for calling the MethodInfo using Expression-Trees + + Method to optimize + Optimized delegate for invoking the MethodInfo + + + + Compile the ? This can improve the performance, but at the costs of more memory usage. If false, the Regex Cache is used. + + + + + + Gets or sets a value indicating whether to match whole words only. + + + + + + Gets or sets a value indicating whether to ignore case when comparing texts. + + + Controls a single allocated AsyncLogEventInfo-List for reuse (only one active user) + + + Controls a single allocated char[]-buffer for reuse (only one active user) + + + + + Controls a single allocated StringBuilder for reuse (only one active user) + + Controls a single allocated object for reuse (only one active user) @@ -8836,17 +10228,7 @@ - Access the MemoryStream acquired - - - - - Controls a single allocated char[]-buffer for reuse (only one active user) - - - - - Controls a single allocated StringBuilder for reuse (only one active user) + Access the acquired reusable object @@ -8863,21 +10245,16 @@ code to - + - Any operating system. + Unknown operating system. - + Unix/Linux operating systems. - - - Windows CE. - - Desktop versions of Windows (95,98,ME). @@ -8888,9 +10265,9 @@ Windows NT, 2000, 2003 and future versions based on NT technology. - + - Unknown operating system. + Macintosh Mac OSX @@ -8900,10 +10277,20 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The text to be tokenized. + + + Current position in + + + + + Full text to be parsed + + Check current char while not changing the position. @@ -8924,16 +10311,6 @@ - - - Current position in - - - - - Full text to be parsed - - Implements a single-call guard around given continuation function. @@ -8951,11 +10328,73 @@ The exception. + + + HashSet optimized for single item + + + + + + Insert single item on scope start, and remove on scope exit + + Item to insert in scope + Existing hashset to update + Force allocation of real hashset-container + HashSet EqualityComparer + + + + Add item to collection, if it not already exists + + Item to insert + + + + Clear hashset + + + + + Check if hashset contains item + + + Item exists in hashset (true/false) + + + + Remove item from hashset + + + Item removed from hashset (true/false) + + + + Copy items in hashset to array + + Destination array + Array offset + + + + Create hashset enumerator + + Enumerator + Provides helpers to sort log events and associated continuations. + + + Key selector delegate. + + The type of the value. + The type of the key. + Value to extract key information from. + Key selected from log event. + Performs bucket sort (group by) on an array of items and returns a dictionary for easy traversal of the result set. @@ -8980,14 +10419,18 @@ Dictionary where keys are unique input keys, and values are lists of . - + - Key selector delegate. + Performs bucket sort (group by) on an array of items and returns a dictionary for easy traversal of the result set. The type of the value. The type of the key. - Value to extract key information from. - Key selected from log event. + The inputs. + The key selector function. + The key comparer function. + + Dictionary where keys are unique input keys, and values are lists of . + @@ -8998,7 +10441,32 @@ The type of the key. The type of the value. - + + + + + + + + + + + + + + + Allows direct lookup of existing keys. If trying to access non-existing key exception is thrown. + Consider to use instead for better safety. + + Key value for lookup + Mapped value found + + + + Non-Allocating struct-enumerator + + + @@ -9031,42 +10499,37 @@ Will always throw, as dictionary is readonly - - - - - - - - - - - - - - - Allows direct lookup of existing keys. If trying to access non-existing key exception is thrown. - Consider to use instead for better safety. - - Key value for lookup - Mapped value found - - - - Non-Allocating struct-enumerator - - Utilities for dealing with values. - + - Get this stacktrace for inline unit test + Gets the fully qualified name of the class invoking the calling method, including the + namespace but not the assembly. - - + + + + Gets the fully qualified name of the class invoking the calling method, including the + namespace but not the assembly. + + StackFrame from the calling method + Fully qualified class name + + + + Returns the assembly from the provided StackFrame (If not internal assembly) + + Valid assembly, or null if assembly was internal + + + + Returns the classname from the provided StackFrame (If not from internal assembly) + + + Valid class name, or empty string if assembly was internal @@ -9102,14 +10565,14 @@ Helpers for , which is used in e.g. layout renderers. - + - Append a value and use formatProvider of or to convert to string. + Renders the specified log event context item and appends it to the specified . - - value to append. - current logEvent for FormatProvider. - Configuration for DefaultCultureInfo + append to this + value to be appended + format string. If @, then serialize the value with the Default JsonConverter. + provider, for example culture @@ -9122,17 +10585,119 @@ Appends uint without using culture, and most importantly without garbage - Credits Gavin Pugh - http://www.gavpugh.com/2010/04/01/xnac-avoiding-garbage-when-working-with-stringbuilder/ + Credits Gavin Pugh - https://www.gavpugh.com/2010/04/01/xnac-avoiding-garbage-when-working-with-stringbuilder/ value to append + + + Convert DateTime into UTC and format to yyyy-MM-ddTHH:mm:ss.fffffffZ - ISO 6801 date (Round-Trip-Time) + + Clears the provider StringBuilder + + + Copies the contents of the StringBuilder to the MemoryStream using the specified encoding (Without BOM/Preamble) + + StringBuilder source + MemoryStream destination + Encoding used for converter string into byte-stream + Helper char-buffer to minimize memory allocations + + + + Copies the contents of the StringBuilder to the destination StringBuilder + + StringBuilder source + StringBuilder destination + + + + Scans the StringBuilder for the position of needle character + + StringBuilder source + needle character to search for + + Index of the first occurrence (Else -1) + + + + Scans the StringBuilder for the position of needle character + + StringBuilder source + needle characters to search for + + Index of the first occurrence (Else -1) + + + + Compares the contents of two StringBuilders + + + Correct implementation of that also works when is not the same + + True when content is the same + + + + Compares the contents of a StringBuilder and a String + + True when content is the same + + + + Append a number and pad with 0 to 2 digits + + append to this + the number + + + + Append a number and pad with 0 to 4 digits + + append to this + the number + + + + Append a int type (byte, int) as string + + + + + Constructor + + Max number of items + Initial StringBuilder Size + Max StringBuilder Size + + + + Takes StringBuilder from pool + + Allow return to pool + + + + Releases StringBuilder back to pool at its right place + + + + + Keeps track of acquired pool item + + + + + Releases pool item back into pool + + Helpers for . @@ -9150,23 +10715,6 @@ Split a string - - - Split string with escape. The escape char is the same as the splitchar - - - split char. escaped also with this char - - - - - Split string with escape - - - - - - Split a string, optional quoted value @@ -9178,7 +10726,18 @@ Escape for the , not escape for the , use quotes for that. - + + + + Split a string, optional quoted value + + Text to split + Character to split the + Quote character + + Escape for the , not escape for the + , use quotes for that. + @@ -9191,18 +10750,13 @@ cached result as calculating is expensive. - + - Initializes a new instance of the class. + Initializes a new instance of the class. The target. The filter chain. - - - - Gets the stack trace usage. - - A value that determines stack trace handling. + Default action if none of the filters match. @@ -9216,6 +10770,11 @@ The filter chain. + + + Default action if none of the filters match. + + Gets or sets the next item in the chain. @@ -9223,6 +10782,12 @@ The next item in the chain. This is for example the 'target2' logger in writeTo='target1,target2' + + + Gets the stack trace usage. + + A value that determines stack trace handling. + Helper for dealing with thread-local storage. @@ -9268,74 +10833,106 @@ Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Transformation on a layout. Pre-calculated if the layout has a fixed value. + + + + + Create TransformedLayout. + + Layout + Transformation method + Optional renderer, otherwise is used + + + + + + + Create TransformedLayout. If is null, then the returns null + + Layout + Transformation method + Optional renderer, otherwise is used + null if is null + + + + + + + URL Encoding helper. - + + Allow UnreservedMarks instead of ReservedMarks, as specified by chosen RFC + + + Use RFC2396 standard (instead of RFC3986) + + + Should use lowercase when doing HEX escaping of special characters + + + Replace space ' ' with '+' instead of '%20' + + + Skip UTF8 encoding, and prefix special characters with '%u' + + Escape unicode string data for use in http-requests unicode string-data to be encoded target for the encoded result - s for how to perform the encoding + s for how to perform the encoding - - Allow UnreservedMarks instead of ReservedMarks, as specified by chosen RFC - - - Use RFC2396 standard (instead of RFC3986) - - - Should use lowercase when doing HEX escaping of special characters - - - Replace space ' ' with '+' instead of '%20' - - - Skip UTF8 encoding, and prefix special characters with '%u' - - + - Win32-optimized implementation of . + Convert the wide-char into utf8-bytes, and then escape + + + + + + + + + Is allowed? + + + + + + + + Is a-z / A-Z / 0-9 + + + + + + + Prevents the Xamarin linker from linking the target. + + + By applying this attribute all of the members of the target will be kept as if they had been referenced by the code. + + + + + Ensures that all members of this type are preserved - + - Gets the information about a file. + Flags the method as a method to preserve during linking if the container class is pulled in. - Name of the file. - The file stream. - The file characteristics, if the file information was retrieved successfully, otherwise null. - - - - Win32-optimized implementation of . - - - - - Initializes a new instance of the class. - - - - - Gets current process ID. - - - - - - Gets current process name. - - - - - - Gets current process name (excluding filename extension, if any). - - @@ -9354,6 +10951,14 @@ unclean string string with only valid XML chars + + + Pretest, small text and not escape needed + + + + + Converts object value to invariant format, and strips any invalid xml-characters @@ -9368,12 +10973,24 @@ Object value Object value converted to string - + + + XML elements must follow these naming rules: + - Element names are case-sensitive + - Element names must start with a letter or underscore + - Element names can contain letters, digits, hyphens, underscores, and periods + - Element names cannot contain spaces + + + + + Converts object value to invariant format (understood by JavaScript) Object value Object TypeCode + Check and remove unusual unicode characters from the result string. Object value converted to string @@ -9391,8 +11008,8 @@ Safe version of WriteAttributeString - + @@ -9411,16 +11028,1225 @@ + + + Interface for handling object transformation + + + + + Takes a dangerous (or massive) object and converts into a safe (or reduced) object + + + Null if unknown object, or object cannot be handled + + + + + Provides an interface to execute System.Actions without surfacing any exceptions raised for that action. + + + + + Runs the provided action. If the action throws, the exception is logged at Error level. The exception is not propagated outside of this method. + + Action to execute. + + + + Runs the provided function and returns its result. If an exception is thrown, it is logged at Error level. + The exception is not propagated outside of this method; a default value is returned instead. + + Return type of the provided function. + Function to run. + Result returned by the provided function or the default value of type in case of exception. + + + + Runs the provided function and returns its result. If an exception is thrown, it is logged at Error level. + The exception is not propagated outside of this method; a fallback value is returned instead. + + Return type of the provided function. + Function to run. + Fallback value to return in case of exception. + Result returned by the provided function or fallback value in case of exception. + + + + Logs an exception is logged at Error level if the provided task does not run to completion. + + The task for which to log an error if it does not run to completion. + This method is useful in fire-and-forget situations, where application logic does not depend on completion of task. This method is avoids C# warning CS4014 in such situations. + + + + Returns a task that completes when a specified task to completes. If the task does not run to completion, an exception is logged at Error level. The returned task always runs to completion. + + The task for which to log an error if it does not run to completion. + A task that completes in the state when completes. + + + + Runs async action. If the action throws, the exception is logged at Error level. The exception is not propagated outside of this method. + + Async action to execute. + A task that completes in the state when completes. + + + + Runs the provided async function and returns its result. If the task does not run to completion, an exception is logged at Error level. + The exception is not propagated outside of this method; a default value is returned instead. + + Return type of the provided function. + Async function to run. + A task that represents the completion of the supplied task. If the supplied task ends in the state, the result of the new task will be the result of the supplied task; otherwise, the result of the new task will be the default value of type . + + + + Runs the provided async function and returns its result. If the task does not run to completion, an exception is logged at Error level. + The exception is not propagated outside of this method; a fallback value is returned instead. + + Return type of the provided function. + Async function to run. + Fallback value to return if the task does not end in the state. + A task that represents the completion of the supplied task. If the supplied task ends in the state, the result of the new task will be the result of the supplied task; otherwise, the result of the new task will be the fallback value. + + + + Render a message template property to a string + + + + + Serialization of an object, e.g. JSON and append to + + The object to serialize to string. + Parameter Format + Parameter CaptureType + An object that supplies culture-specific formatting information. + Output destination. + Serialize succeeded (true/false) + Log event context data. + + + Initializes a new instance of the class. + + + + + Gets or sets string that will be used to separate key/value pairs. + + + + + + Get or set if empty values should be included. + + A value is empty when null or in case of a string, null or empty string. + + + + + + Gets or sets the keys to exclude from the output. If omitted, none are excluded. + + + + + + Also render the caller information attributes? (, + , ). + + See https://msdn.microsoft.com/en-us/library/hh534540.aspx + + + + + + Gets or sets how key/value pairs will be formatted. + + + + + + Renders all log event's properties and appends them to the specified . + + The to append the rendered data to. + Logging event. + + + + The names of caller information attributes. + , , ). + https://msdn.microsoft.com/en-us/library/hh534540.aspx + TODO NLog ver. 5 - Remove these properties + + + + + Designates a property of the class as an ambient property. + + + non-ambient: ${uppercase:${level}} + ambient : ${level:uppercase} + + + + + Initializes a new instance of the class. + + Ambient property name. + + + + Used to render the application domain name. + + + + + Create a new renderer + + + + + Create a new renderer + + + + + Format string. Possible values: "Short", "Long" or custom like {0} {1}. Default "Long" + The first parameter is the , the second the second the + This string is used in + + + + + + + + + + + + + + + Application setting. + + + Use this layout renderer to insert the value of an application setting + stored in the application's App.config or Web.config file. + + + ${appsetting:item=mysetting:default=mydefault} - produces "mydefault" if no appsetting + + + + + The AppSetting item-name + + + + + + The AppSetting item-name + + + + + The default value to render if the AppSetting value is null. + + + + + + + + + Renders the specified application setting or default value and appends it to the specified . + + The to append the rendered data to. + Logging event. + + + + Renders the assembly version information for the entry assembly or a named assembly. + + + As this layout renderer uses reflection and version information is unlikely to change during application execution, + it is recommended to use it in conjunction with the . + + + The entry assembly can't be found in some cases e.g. ASP.NET, unit tests, etc. + + + + + Initializes a new instance of the class. + + + + + The (full) name of the assembly. If null, using the entry assembly. + + + + + + Gets or sets the type of assembly version to retrieve. + + + Some version type and platform combinations are not fully supported. + - UWP earlier than .NET Standard 1.5: Value for is always returned unless the parameter is specified. + - Silverlight: Value for is always returned. + + + + + + Gets or sets the custom format of the assembly version output. + + + Supported placeholders are 'major', 'minor', 'build' and 'revision'. + The default .NET template for version numbers is 'major.minor.build.revision'. See + https://docs.microsoft.com/en-gb/dotnet/api/system.version?view=netframework-4.7.2#remarks + for details. + + + + + + Initializes the layout renderer. + + + + + Closes the layout renderer. + + + + + Renders an assembly version and appends it to the specified . + + The to append the rendered data to. + Logging event. + + + + Gets the assembly specified by , or entry assembly otherwise + + Found assembly + + + + Type of assembly version to retrieve. + + + + + Gets the assembly version. + + + + + Gets the file version. + + + + + Gets additional version information. + + + + + The current application domain's base directory. + + + + + cached + + + + + Use base dir of current process. Alternative one can just use ${processdir} + + + + + + Fallback to the base dir of current process, when AppDomain.BaseDirectory is Temp-Path (.NET Core 3 - Single File Publish) + + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + Gets or sets the name of the file to be Path.Combine()'d with with the base directory. + + + + + + Gets or sets the name of the directory to be Path.Combine()'d with with the base directory. + + + + + + Renders the application base directory and appends it to the specified . + + The to append the rendered data to. + Logging event. + + + + The call site source file name. Full callsite + + + + + Gets or sets a value indicating whether to include source file path. + + + + + + Gets or sets the number of frames to skip. + + + + + + Logger should capture StackTrace, if it was not provided manually + + + + + Gets the level of stack trace information required by the implementing class. + + + + + + + + + + + The call site (class name, method name and source information). + + + + + Initializes a new instance of the class. + + + + + Gets or sets a value indicating whether to render the class name. + + + + + + Gets or sets a value indicating whether to render the include the namespace with . + + + + + + Gets or sets a value indicating whether to render the method name. + + + + + + Gets or sets a value indicating whether the method name will be cleaned up if it is detected as an anonymous delegate. + + + + + + Gets or sets a value indicating whether the method and class names will be cleaned up if it is detected as an async continuation + (everything after an await-statement inside of an async method). + + + + + + Gets or sets the number of frames to skip. + + + + + + Gets or sets a value indicating whether to render the source file name and line number. + + + + + + Gets or sets a value indicating whether to include source file path. + + + + + + Logger should capture StackTrace, if it was not provided manually + + + + + Gets the level of stack trace information required by the implementing class. + + + + + Renders the call site and appends it to the specified . + + The to append the rendered data to. + Logging event. + + + + The call site source line number. Full callsite + + + + + Gets or sets the number of frames to skip. + + + + + + Logger should capture StackTrace, if it was not provided manually + + + + + Gets the level of stack trace information required by the implementing class. + + + + + + + + + + + A counter value (increases on each layout rendering). + + + + + Gets or sets the initial value of the counter. + + + + + + Gets or sets the value to be added to the counter after each layout rendering. + + + + + + Gets or sets the name of the sequence. Different named sequences can have individual values. + + + + + + + + + The current working directory of the application. + + + + + Gets or sets the name of the file to be Path.Combine()'d with the current directory. + + + + + + Gets or sets the name of the directory to be Path.Combine()'d with the current directory. + + + + + + + + + + + + Current date and time. + + + + + Initializes a new instance of the class. + + + + + Gets or sets the culture used for rendering. + + + + + + Gets or sets the date format. Can be any argument accepted by DateTime.ToString(format). + + + + + + Gets or sets a value indicating whether to output UTC time instead of local time. + + + + + + + + + + + + + + + DB null for a database + + + + + + + + + + + The OS dependent directory separator + + + + + + + + + + + The environment variable. + + + + + Gets or sets the name of the environment variable. + + + + + + Gets or sets the default value to be used when the environment variable is not set. + + + + + + + + + + + + Thread identity information (username). + + + + + Initializes a new instance of the class. + + + + + Gets or sets a value indicating whether username should be included. + + + + + + Gets or sets a value indicating whether domain name should be included. + + + + + + Gets or sets the default value to be used when the User is not set. + + + + + + Gets or sets the default value to be used when the Domain is not set. + + + + + + + + + + + + Log event context data. + + This class was marked as obsolete on NLog 2.0 and it may be removed in a future release. + + + + Gets or sets the name of the item. + + + + + + Renders the specified log event context item and appends it to the specified . + + The to append the rendered data to. + Logging event. + + + + Log event context data. See . + + + + + Gets or sets the name of the item. + + + + + + Format string for conversion from object to string. + + + + + + Gets or sets the culture used for rendering. + + + + + + Gets or sets the object-property-navigation-path for lookup of nested property + + + + + + + + + + + + + + + Exception information provided through + a call to one of the Logger.*Exception() methods. + + + + + Initializes a new instance of the class. + + + + + Gets or sets the format of the output. Must be a comma-separated list of exception + properties: Message, Type, ShortType, ToString, Method, StackTrace. + This parameter value is case-insensitive. + + + + + + + + Gets or sets the format of the output of inner exceptions. Must be a comma-separated list of exception + properties: Message, Type, ShortType, ToString, Method, StackTrace. + This parameter value is case-insensitive. + + + + + + Gets or sets the separator used to concatenate parts specified in the Format. + + + + + + Gets or sets the separator used to concatenate exception data specified in the Format. + + + + + + Gets or sets the maximum number of inner exceptions to include in the output. + By default inner exceptions are not enabled for compatibility with NLog 1.0. + + + + + + Gets or sets the separator between inner exceptions. + + + + + + Gets or sets whether to render innermost Exception from + + + + + Gets or sets whether to collapse exception tree using + + + + + Gets the formats of the output of inner exceptions to be rendered in target. + + + + + + + Gets the formats of the output to be rendered in target. + + + + + + + + + + + + + Appends the Message of an Exception to the specified . + + The to append the rendered data to. + The exception containing the Message to append. + + + + Appends the method name from Exception's stack trace to the specified . + + The to append the rendered data to. + The Exception whose method name should be appended. + + + + Appends the stack trace from an Exception to the specified . + + The to append the rendered data to. + The Exception whose stack trace should be appended. + + + + Appends the result of calling ToString() on an Exception to the specified . + + The to append the rendered data to. + The Exception whose call to ToString() should be appended. + + + + Appends the type of an Exception to the specified . + + The to append the rendered data to. + The Exception whose type should be appended. + + + + Appends the short type of an Exception to the specified . + + The to append the rendered data to. + The Exception whose short type should be appended. + + + + Appends the application source of an Exception to the specified . + + The to append the rendered data to. + The Exception whose source should be appended. + + + + Appends the HResult of an Exception to the specified . + + The to append the rendered data to. + The Exception whose HResult should be appended. + + + + Appends the contents of an Exception's Data property to the specified . + + The to append the rendered data to. + The Exception whose Data property elements should be appended. + + + + Appends all the serialized properties of an Exception into the specified . + + The to append the rendered data to. + The Exception whose properties should be appended. + + + + Appends all the additional properties of an Exception like Data key-value-pairs + + The to append the rendered data to. + The Exception whose properties should be appended. + + + + Split the string and then compile into list of Rendering formats. + + + + + Renders contents of the specified file. + + + + + Initializes a new instance of the class. + + + + + Gets or sets the name of the file. + + + + + + Gets or sets the encoding used in the file. + + The encoding. + + + + + Renders the contents of the specified file and appends it to the specified . + + The to append the rendered data to. + Logging event. + + + + A layout renderer which could have different behavior per instance by using a . + + + + + Initializes a new instance of the class. + + Name without ${}. + + + + Initializes a new instance of the class. + + Name without ${}. + Method that renders the layout. + + + + Name used in config without ${}. E.g. "test" could be used as "${test}". + + + + + Method that renders the layout. + + This public property will be removed in NLog 5. + + + + + Format string for conversion from object to string. + + + + + + + + + + + + Render the value for this log event + + The event info. + The value. + + + + A layout renderer which could have different behavior per instance by using a . + + + + + Initializes a new instance of the class. + + Name without ${}. + Method that renders the layout. + + + + A layout renderer which could have different behavior per instance by using a . + + + + + Initializes a new instance of the class. + + Name without ${}. + Method that renders the layout. + + + + The information about the garbage collector. + + + + + Gets or sets the property to retrieve. + + + + + + + + + Gets or sets the property of System.GC to retrieve. + + + + + Total memory allocated. + + + + + Total memory allocated (perform full garbage collection first). + + + + + Gets the number of Gen0 collections. + + + + + Gets the number of Gen1 collections. + + + + + Gets the number of Gen2 collections. + + + + + Maximum generation number supported by GC. + + + + + Render a Global Diagnostics Context item. See + + + + + Gets or sets the name of the item. + + + + + + Format string for conversion from object to string. + + + + + + + + + + + + + + + Globally-unique identifier (GUID). + + + + + Gets or sets the GUID format as accepted by Guid.ToString() method. + + + + + + Generate the Guid from the NLog LogEvent (Will be the same for all targets) + + + + + + + + + + + + + + + The host name that the process is running on. + + + + + + + + Gets the host name and falls back to computer name if not available + + + + + Tries the lookup value. + + The lookup function. + Type of the lookup. + + + + + + + + Thread identity information (name and authentication information). + + + + + Gets or sets the separator to be used when concatenating + parts of identity information. + + + + + + Gets or sets a value indicating whether to render Thread.CurrentPrincipal.Identity.Name. + + + + + + Gets or sets a value indicating whether to render Thread.CurrentPrincipal.Identity.AuthenticationType. + + + + + + Gets or sets a value indicating whether to render Thread.CurrentPrincipal.Identity.IsAuthenticated. + + + + + + + + + Retrieve network interfaces + + + + + Retrieve network interfaces + + + + + Installation parameter (passed to InstallNLogConfig). + + + + + Gets or sets the name of the parameter. + + + + + + Renders the specified installation parameter and appends it to the specified . + + The to append the rendered data to. + Logging event. + Render environmental information related to logging events. + + + Gets the logging configuration this target is part of. + + Returns a that represents this instance. @@ -9465,14 +12291,14 @@ - Renders the the value of layout renderer in the context of the specified log event. + Renders the value of layout renderer in the context of the specified log event. The log event. The layout render output is appended to builder - Renders the specified environmental information and appends it to the specified . + Renders the value of layout renderer in the context of the specified log event into . The to append the rendered data to. Logging event. @@ -9516,7 +12342,7 @@ Register a custom layout renderer. - Short-cut for registing to default + Short-cut for registering to default Type of the layout renderer. Name of the layout renderer - without ${}. @@ -9524,773 +12350,29 @@ Register a custom layout renderer. - Short-cut for registing to default + Short-cut for registering to default Type of the layout renderer. Name of the layout renderer - without ${}. - Register a custom layout renderer with a callback function . The callback recieves the logEvent. + Register a custom layout renderer with a callback function . The callback receives the logEvent. Name of the layout renderer - without ${}. Callback that returns the value for the layout renderer. - Register a custom layout renderer with a callback function . The callback recieves the logEvent and the current configuration. + Register a custom layout renderer with a callback function . The callback receives the logEvent and the current configuration. Name of the layout renderer - without ${}. Callback that returns the value for the layout renderer. - + - Gets the logging configuration this target is part of. + Register a custom layout renderer with a callback function . The callback receives the logEvent and the current configuration. - - - - Initializes a new instance of the class. - - - - - Renders all log event's properties and appends them to the specified . - - The to append the rendered data to. - Logging event. - - - - The names of caller information attributes. - https://msdn.microsoft.com/en-us/library/hh534540.aspx - - - - - Also render the call attributes? (, - , ). - - - - - - Gets or sets string that will be used to separate key/value pairs. - - - - - - Also render the caller information attributes? (, - , ). - - See https://msdn.microsoft.com/en-us/library/hh534540.aspx - - - - - Gets or sets how key/value pairs will be formatted. - - - - - - Designates a property of the class as an ambient property. - - - non-ambient: ${uppercase:${level}} - ambient : ${level:uppercase} - - - - - Initializes a new instance of the class. - - Ambient property name. - - - - Used to render the application domain name. - - - - - Create a new renderer - - - - - Create a new renderer - - - - - Render the layout - - - - - - - Convert the formatting string - - - - - - - Format string. Possible values: "Short", "Long" or custom like {0} {1}. Default "Long" - The first parameter is the , the second the second the - This string is used in - - - - - Assembly version. - - The entry assembly can't be found in some cases e.g. ASP.NET, Unit tests etc. - - - - Renders assembly version and appends it to the specified . - - The to append the rendered data to. - Logging event. - - - - The (full) name of the assembly. If null, using the entry assembly. - - - - - The current application domain's base directory. - - - - - cached - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - - - - Renders the application base directory and appends it to the specified . - - The to append the rendered data to. - Logging event. - - - - Use base dir of current process. - - - - - Gets or sets the name of the file to be Path.Combine()'d with with the base directory. - - - - - - Gets or sets the name of the directory to be Path.Combine()'d with with the base directory. - - - - - - The call site (class name, method name and source information). - - - - - Initializes a new instance of the class. - - - - - Renders the call site and appends it to the specified . - - The to append the rendered data to. - Logging event. - - - - Gets or sets a value indicating whether to render the class name. - - - - - - Gets or sets a value indicating whether to render the include the namespace with . - - - - - - Gets or sets a value indicating whether to render the method name. - - - - - - Gets or sets a value indicating whether the method name will be cleaned up if it is detected as an anonymous delegate. - - - - - - Gets or sets the number of frames to skip. - - - - - Gets or sets a value indicating whether to render the source file name and line number. - - - - - - Gets or sets a value indicating whether to include source file path. - - - - - - Gets the level of stack trace information required by the implementing class. - - - - - The call site source line number. Full callsite - - - - - Renders the call site and appends it to the specified . - - The to append the rendered data to. - Logging event. - - - - Gets or sets the number of frames to skip. - - - - - Gets the level of stack trace information required by the implementing class. - - - - - A counter value (increases on each layout rendering). - - - - - Initializes a new instance of the class. - - - - - Renders the specified counter value and appends it to the specified . - - The to append the rendered data to. - Logging event. - - - - Gets or sets the initial value of the counter. - - - - - - Gets or sets the value to be added to the counter after each layout rendering. - - - - - - Gets or sets the name of the sequence. Different named sequences can have individual values. - - - - - - Current date and time. - - - - - Initializes a new instance of the class. - - - - Cache-key (Last DateTime.UtcNow) + Cache-Value (DateTime.Format result) - - - Cache-key (Last DateTime.Now) + Cache-Value (DateTime.Format result) - - - - Renders the current date and appends it to the specified . - - The to append the rendered data to. - Logging event. - - - - Gets or sets the culture used for rendering. - - - - - - Gets or sets the date format. Can be any argument accepted by DateTime.ToString(format). - - - - - - Gets or sets a value indicating whether to output UTC time instead of local time. - - - - - - The environment variable. - - - - - Renders the specified environment variable and appends it to the specified . - - The to append the rendered data to. - Logging event. - - - - Gets or sets the name of the environment variable. - - - - - - Gets or sets the default value to be used when the environment variable is not set. - - - - - - Log event context data. - - This class was marked as obsolete on NLog 2.0 and it may be removed in a future release. - - - - Renders the specified log event context item and appends it to the specified . - - The to append the rendered data to. - Logging event. - - - - Gets or sets the name of the item. - - - - - - Log event context data. See . - - - - - Log event context data with default options. - - - - - Renders the specified log event context item and appends it to the specified . - - The to append the rendered data to. - Logging event. - - - - Gets or sets the name of the item. - - - - - - Format string for conversion from object to string. - - - - - Gets or sets the culture used for rendering. - - - - - - Exception information provided through - a call to one of the Logger.*Exception() methods. - - - - - Initializes a new instance of the class. - - - - - Renders the specified exception information and appends it to the specified . - - The to append the rendered data to. - Logging event. - - - - Appends the Message of an Exception to the specified . - - The to append the rendered data to. - The exception containing the Message to append. - - - - Appends the method name from Exception's stack trace to the specified . - - The to append the rendered data to. - The Exception whose method name should be appended. - - - - Appends the stack trace from an Exception to the specified . - - The to append the rendered data to. - The Exception whose stack trace should be appended. - - - - Appends the result of calling ToString() on an Exception to the specified . - - The to append the rendered data to. - The Exception whose call to ToString() should be appended. - - - - Appends the type of an Exception to the specified . - - The to append the rendered data to. - The Exception whose type should be appended. - - - - Appends the short type of an Exception to the specified . - - The to append the rendered data to. - The Exception whose short type should be appended. - - - - Appends the contents of an Exception's Data property to the specified . - - The to append the rendered data to. - The Exception whose Data property elements should be appended. - - - - Split the string and then compile into list of Rendering formats. - - - - - - - Gets or sets the format of the output. Must be a comma-separated list of exception - properties: Message, Type, ShortType, ToString, Method, StackTrace. - This parameter value is case-insensitive. - - - - - - - - Gets or sets the format of the output of inner exceptions. Must be a comma-separated list of exception - properties: Message, Type, ShortType, ToString, Method, StackTrace. - This parameter value is case-insensitive. - - - - - - Gets or sets the separator used to concatenate parts specified in the Format. - - - - - - Gets or sets the separator used to concatenate exception data specified in the Format. - - - - - - Gets or sets the maximum number of inner exceptions to include in the output. - By default inner exceptions are not enabled for compatibility with NLog 1.0. - - - - - - Gets or sets the separator between inner exceptions. - - - - - - Gets the formats of the output of inner exceptions to be rendered in target. - - - - - - - Gets the formats of the output to be rendered in target. - - - - - - - Renders contents of the specified file. - - - - - Initializes a new instance of the class. - - - - - Renders the contents of the specified file and appends it to the specified . - - The to append the rendered data to. - Logging event. - - - - Gets or sets the name of the file. - - - - - - Gets or sets the encoding used in the file. - - The encoding. - - - - - A layout renderer which could have different behavior per instance by using a . - - - - - Create a new. - - Name without ${}. - Method that renders the layout. - - - - Renders the specified environmental information and appends it to the specified . - - The to append the rendered data to. - Logging event. - - - - Name used in config without ${}. E.g. "test" could be used as "${test}". - - - - - Method that renders the layout. - - - - - The information about the garbage collector. - - - - - Initializes a new instance of the class. - - - - - Renders the selected process information. - - The to append the rendered data to. - Logging event. - - - - Gets or sets the property to retrieve. - - - - - - Gets or sets the property of System.GC to retrieve. - - - - - Total memory allocated. - - - - - Total memory allocated (perform full garbage collection first). - - - - - Gets the number of Gen0 collections. - - - - - Gets the number of Gen1 collections. - - - - - Gets the number of Gen2 collections. - - - - - Maximum generation number supported by GC. - - - - - Global Diagnostics Context item. Provided for compatibility with log4net. - - - - - Renders the specified Global Diagnostics Context item and appends it to the specified . - - The to append the rendered data to. - Logging event. - - - - Gets or sets the name of the item. - - - - - - Globally-unique identifier (GUID). - - - - - Initializes a new instance of the class. - - - - - Renders a newly generated GUID string and appends it to the specified . - - The to append the rendered data to. - Logging event. - - - - Gets or sets the GUID format as accepted by Guid.ToString() method. - - - - - - Thread identity information (name and authentication information). - - - - - Initializes a new instance of the class. - - - - - Renders the specified identity information and appends it to the specified . - - The to append the rendered data to. - Logging event. - - - - Gets or sets the separator to be used when concatenating - parts of identity information. - - - - - - Gets or sets a value indicating whether to render Thread.CurrentPrincipal.Identity.Name. - - - - - - Gets or sets a value indicating whether to render Thread.CurrentPrincipal.Identity.AuthenticationType. - - - - - - Gets or sets a value indicating whether to render Thread.CurrentPrincipal.Identity.IsAuthenticated. - - - - - - Installation parameter (passed to InstallNLogConfig). - - - - - Renders the specified installation parameter and appends it to the specified . - - The to append the rendered data to. - Logging event. - - - - Gets or sets the name of the parameter. - - + Renderer with callback func @@ -10300,7 +12382,7 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the layout renderer, without the `${ }` @@ -10311,7 +12393,7 @@ - Render the full level name. + Render the LogLevel standard name. @@ -10324,22 +12406,30 @@ Render the ordinal (aka number) for the level. + + + Render the LogLevel full name, expanding Warn / Info abbreviations + + The log level. - - - Renders the current log level and appends it to the specified . - - The to append the rendered data to. - Logging event. - Gets or sets a value indicating the output format of the level. + + + + + + + + + + @@ -10352,29 +12442,52 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. The literal text value. This is used by the layout compiler. - - - Renders the specified string literal and appends it to the specified . - - The to append the rendered data to. - Logging event. - Gets or sets the literal text. + + + Renders the specified string literal and appends it to the specified . + + The to append the rendered data to. + Logging event. + + + + The IP address from the network interface card (NIC) on the local machine + + + Skips loopback-adapters and tunnel-interfaces. Skips devices without any MAC-address + + + + + Get or set whether to prioritize IPv6 or IPv4 (default) + + + + + + + + + + + + XML event description compatible with log4j, Chainsaw and NLogViewer. @@ -10382,20 +12495,18 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. - + - Renders the XML logging event and appends it to the specified . + Initializes the layout renderer. - The to append the rendered data to. - Logging event. @@ -10431,13 +12542,25 @@ Gets or sets a value indicating whether to include contents of the dictionary. - + Gets or sets a value indicating whether to include contents of the dictionary. - + + + + + Gets or sets a value indicating whether to include contents of the stack. + + + + + + Gets or sets the NDLC item separator. + + @@ -10449,108 +12572,125 @@ Gets or sets a value indicating whether to include contents of the stack. - + - + Gets or sets the NDC item separator. + + + Gets or sets the log4j:event logger-xml-attribute (Default ${logger}) + + + Gets the level of stack trace information required by the implementing class. + + + Renders the XML logging event and appends it to the specified . + + The to append the rendered data to. + Logging event. + The logger name. - - - Renders the logger name and appends it to the specified . - - The to append the rendered data to. - Logging event. - Gets or sets a value indicating whether to render short logger name (the part after the trailing dot character). + + + + + + - The date and time in a long, sortable format yyyy-MM-dd HH:mm:ss.mmm. + The date and time in a long, sortable format yyyy-MM-dd HH:mm:ss.ffff. - - - Renders the date in the long format (yyyy-MM-dd HH:mm:ss.mmm) and appends it to the specified . - - The to append the rendered data to. - Logging event. - Gets or sets a value indicating whether to output UTC time instead of local time. + + + Renders the date in the long format (yyyy-MM-dd HH:mm:ss.ffff) and appends it to the specified . + + The to append the rendered data to. + Logging event. + The machine name that the process is running on. - - Initializes the layout renderer. - + - - Renders the machine name and appends it to the specified . - - The to append the rendered data to. - Logging event. + - Mapped Diagnostic Context item. Provided for compatibility with log4net. + Render a Mapped Diagnostic Context item, See - - - Renders the specified MDC item and appends it to the specified . - - The to append the rendered data to. - Logging event. - Gets or sets the name of the item. + + + Format string for conversion from object to string. + + + + + + + + + - Mapped Diagnostic Logical Context item (based on CallContext). + Render a Mapped Diagnostic Logical Context item (based on CallContext). + See - - - Renders the specified MDLC item and appends it to the specified . - - The to append the rendered data to. - Logging event. - Gets or sets the name of the item. + + + Format string for conversion from object to string. + + + + + + + + + The formatted log message. @@ -10558,16 +12698,9 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - - - Renders the log message including any positional parameters and appends it to the specified . - - The to append the rendered data to. - Logging event. - Gets or sets a value indicating whether to log exception along with message. @@ -10580,23 +12713,29 @@ + + + Gets or sets whether it should render the raw message without formatting parameters + + + + + + + + + - Nested Diagnostic Context item. Provided for compatibility with log4net. + Render a Nested Diagnostic Context item. + See - Initializes a new instance of the class. + Initializes a new instance of the class. - - - Renders the specified Nested Diagnostics Context item and appends it to the specified . - - The to append the rendered data to. - Logging event. - Gets or sets the number of top stack frames to be rendered. @@ -10615,23 +12754,24 @@ + + + Renders the specified Nested Diagnostics Context item and appends it to the specified . + + The to append the rendered data to. + Logging event. + - Renderer (Async scope) + Render a Nested Diagnostic Logical Context item (Async scope) + See - Initializes a new instance of the class. + Initializes a new instance of the class. - - - Renders the specified Nested Logical Context item and appends it to the specified . - - The to append the rendered data to. - Logging event. - Gets or sets the number of top stack frames to be rendered. @@ -10650,6 +12790,53 @@ + + + Renders the specified Nested Logical Context item and appends it to the specified . + + The to append the rendered data to. + Logging event. + + + + Timing Renderer (Async scope) + + + + + Gets or sets whether to only include the duration of the last scope created + + + + + + Gets or sets whether to just display the scope creation time, and not the duration + + + + + + Gets or sets the TimeSpan format. Can be any argument accepted by TimeSpan.ToString(format). + + + + + + Renders the timing details of the Nested Logical Context item and appends it to the specified . + + The to append the rendered data to. + Logging event. + + + + Retrieve network interfaces + + + + + Retrieve network interfaces + + A newline literal. @@ -10657,7 +12844,7 @@ - Renders the specified string literal and appends it to the specified . + Renders the specified string literal and appends it to the specified . The to append the rendered data to. Logging event. @@ -10672,13 +12859,6 @@ Initializes static members of the NLogDirLayoutRenderer class. - - - Renders the directory where NLog is located and appends it to the specified . - - The to append the rendered data to. - Logging event. - Gets or sets the name of the file to be Path.Combine()'d with the directory name. @@ -10691,28 +12871,28 @@ - - - The performance counter. - - - + Initializes the layout renderer. - + Closes the layout renderer. - + - Renders the specified environment variable and appends it to the specified . + Renders the directory where NLog is located and appends it to the specified . The to append the rendered data to. Logging event. + + + The performance counter. + + Gets or sets the name of the counter category. @@ -10737,45 +12917,89 @@ + + + Format string for conversion from float to string. + + + + + + Gets or sets the culture used for rendering. + + + + + + + + + + + + + + + If having multiple instances with the same process-name, then they will get different instance names + + + + + The executable directory from the FileName, + using the current process + + + + + Gets or sets the name of the file to be Path.Combine()'d with with the process directory. + + + + + + Gets or sets the name of the directory to be Path.Combine()'d with with the process directory. + + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + The identifier of the current process. - + - Renders the current process ID. + Initializes a new instance of the class. - The to append the rendered data to. - Logging event. + + + + Initializes a new instance of the class. + + + + + + + The information about the running process. - - - Initializes a new instance of the class. - - - - - Initializes the layout renderer. - - - - - Closes the layout renderer. - - - - - Renders the selected process information. - - The to append the rendered data to. - Logging event. - Gets or sets the property to retrieve. @@ -10788,6 +13012,15 @@ + + + + + + + + + Property of System.Diagnostics.Process to retrieve. @@ -10993,6 +13226,22 @@ The name of the current process. + + + Gets or sets a value indicating whether to write the full path to the process executable. + + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + Renders the current process name (optionally with a full path). @@ -11000,54 +13249,33 @@ The to append the rendered data to. Logging event. - - - Gets or sets a value indicating whether to write the full path to the process executable. - - - The process time in format HH:mm:ss.mmm. - + - Renders the current process running time and appends it to the specified . + Gets or sets a value indicating whether to output in culture invariant format - The to append the rendered data to. - Logging event. + + + + + + + Write timestamp to builder with format hh:mm:ss:fff - - - High precision timer, based on the value returned from QueryPerformanceCounter() optionally converted to seconds. - - - Initializes a new instance of the class. - - - - - Initializes the layout renderer. - - - - - Renders the ticks value of current time and appends it to the specified . - - The to append the rendered data to. - Logging event. - Gets or sets a value indicating whether to normalize the result by subtracting @@ -11081,6 +13309,12 @@ + + + + + + A value from the Registry. @@ -11091,26 +13325,6 @@ Create new renderer - - - Reads the specified registry key and value and appends it to - the passed . - - The to append the rendered data to. - Logging event. Ignored. - - - - Parse key to and subkey. - - full registry key name - Result of parsing, never null. - - - - Aliases for the hives. See https://msdn.microsoft.com/en-us/library/ctb3kd86(v=vs.110).aspx - - Gets or sets the registry value name. @@ -11125,7 +13339,7 @@ - Require escaping backward slashes in . Need to be backwardscompatible. + Require escaping backward slashes in . Need to be backwards-compatible. When true: @@ -11133,12 +13347,14 @@ `\\` in value should be configured as `\\\\`. Default value wasn't a Layout before and needed an escape of the slash + Gets or sets the registry view (see: https://msdn.microsoft.com/de-de/library/microsoft.win32.registryview.aspx). Allowed values: Registry32, Registry64, Default + @@ -11163,58 +13379,71 @@ + + + Reads the specified registry key and value and appends it to + the passed . + + The to append the rendered data to. + Logging event. Ignored. + Has ? + + + Parse key to and subkey. + + full registry key name + Result of parsing, never null. + + + + Aliases for the hives. See https://msdn.microsoft.com/en-us/library/ctb3kd86(v=vs.110).aspx + + + + + The sequence ID + + + + + + + + The short date in a sortable format yyyy-MM-dd. - - - Renders the current short date string (yyyy-MM-dd) and appends it to the specified . - - The to append the rendered data to. - Logging event. - Gets or sets a value indicating whether to output UTC time instead of local time. - + - Appends a date in format yyyy-MM-dd to the StringBuilder. - The DateTime.ToString() result is cached for future uses - since it only changes once a day. This optimization yields a - performance boost of 40% and makes the renderer allocation-free - in must cases. + Renders the current short date string (yyyy-MM-dd) and appends it to the specified . - The to append the date to - The date to append + The to append the rendered data to. + Logging event. System special folder path (includes My Documents, My Music, Program Files, Desktop, and more). - - - Renders the directory where NLog is located and appends it to the specified . - - The to append the rendered data to. - Logging event. - Gets or sets the system special folder to use. - Full list of options is available at MSDN. + Full list of options is available at MSDN. The most common ones are:
  • ApplicationData - roaming application data for current user.
  • @@ -11240,6 +13469,13 @@
+ + + Renders the directory where NLog is located and appends it to the specified . + + The to append the rendered data to. + Logging event. + Format of the ${stacktrace} layout renderer output. @@ -11267,16 +13503,9 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - - - Renders the call site and appends it to the specified . - - The to append the rendered data to. - Logging event. - Gets or sets the output format of the stack trace. @@ -11301,24 +13530,29 @@ + + + Logger should capture StackTrace, if it was not provided manually + + Gets the level of stack trace information required by the implementing class. + + + Renders the call site and appends it to the specified . + + The to append the rendered data to. + Logging event. + A temporary directory. - - - Renders the directory where NLog is located and appends it to the specified . - - The to append the rendered data to. - Logging event. - Gets or sets the name of the file to be Path.Combine()'d with the directory name. @@ -11331,17 +13565,23 @@ + + + + + + Renders the directory where NLog is located and appends it to the specified . + + The to append the rendered data to. + Logging event. + The identifier of the current thread. - - Renders the current thread identifier and appends it to the specified . - - The to append the rendered data to. - Logging event. + @@ -11349,11 +13589,7 @@ - - Renders the current thread name and appends it to the specified . - - The to append the rendered data to. - Logging event. + @@ -11361,47 +13597,63 @@ - - Renders the ticks value of current time and appends it to the specified . - - The to append the rendered data to. - Logging event. + + + + - The time in a 24-hour, sortable format HH:mm:ss.mmm. + The time in a 24-hour, sortable format HH:mm:ss.mmmm. - - - Renders time in the 24-h format (HH:mm:ss.mmm) and appends it to the specified . - - The to append the rendered data to. - Logging event. - Gets or sets a value indicating whether to output UTC time instead of local time. + + + Gets or sets a value indicating whether to output in culture invariant format + + + + + + + + + A renderer that puts into log a System.Diagnostics trace correlation id. - - Renders the current trace activity ID. - - The to append the rendered data to. - Logging event. + + + + Render a NLog variable (xml or config) + + + Gets or sets the name of the NLog variable. + + + + + + Gets or sets the default value to be used when the variable is not set. + + Not used if Name is null + + Initializes the layout renderer. @@ -11416,24 +13668,11 @@ - Renders the specified variable and appends it to the specified . + Renders the specified variable and appends it to the specified . The to append the rendered data to. Logging event. - - - Gets or sets the name of the NLog variable. - - - - - - Gets or sets the default value to be used when the variable is not set. - - Not used if Name is null - - Thread Windows identity information (username). @@ -11441,16 +13680,9 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - - - Renders the current thread windows identity information and appends it to the specified . - - The to append the rendered data to. - Logging event. - Gets or sets a value indicating whether domain name should be included. @@ -11463,6 +13695,13 @@ + + + Renders the current thread windows identity information and appends it to the specified . + + The to append the rendered data to. + Logging event. + Applies caching to another layout output. @@ -11471,52 +13710,49 @@ The value of the inner layout will be rendered only once and reused subsequently. - + - Base class for s which wrapping other s. - - This has the property (which is default) and can be used to wrap. + A value indicating when the cache is cleared. - - ${uppercase:${level}} //[DefaultParameter] - ${uppercase:Inner=${level}} - - - - Renders the inner message, processes it and appends it to the specified . - - The to append the rendered data to. - Logging event. + + Never clear the cache. - - - Transforms the output of another layout. - - Output to be transform. - If the is needed, overwrite . - Transformed text. + + Clear the cache whenever the is initialized. - - - Renders the inner layout contents. - - The log event. - Contents of inner layout. - - - - Gets or sets the wrapped layout. - - [DefaultParameter] so Inner: is not required if it's the first - - + + Clear the cache whenever the is closed. Initializes a new instance of the class. + + + Gets or sets a value indicating whether this is enabled. + + + + + + Gets or sets a value indicating when the cache is cleared. + + + + + + Cachekey. If the cachekey changes, resets the value. For example, the cachekey would be the current day.s + + + + + + Gets or sets a value indicating how many seconds the value should stay cached until it expires + + + Initializes the layout renderer. @@ -11541,93 +13777,19 @@ The log event. Contents of inner layout. - - - Gets or sets a value indicating whether this is enabled. - - - - - - Gets or sets a value indicating when the cache is cleared. - - - - - Cachekey. If the cachekey changes, resets the value. For example, the cachekey would be the current day.s - - - - - A value indicating when the cache is cleared. - - - - Never clear the cache. - - - Clear the cache whenever the is initialized. - - - Clear the cache whenever the is closed. + + Filters characters not allowed in the file names by replacing them with safe character. - - - Base class for s which wrapping other s. - - This expects the transformation to work on a - - - - - Render to local target using Inner Layout, and then transform before final append - - - - - - - Transforms the output of another layout. - - Output to be transform. - - - - Renders the inner layout contents. - - Logging - Initially empty for the result - - - - - - - - - - - - - - - - Initializes a new instance of the class. + Initializes a new instance of the class. - - - Replaces all non-safe characters with underscore to make valid filepath - - Output to be transformed. - Gets or sets a value indicating whether to modify the output of this renderer so it can be used as a part of file path @@ -11635,6 +13797,12 @@ + + + + + + Escapes output of another layout using JSON rules. @@ -11642,16 +13810,9 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - - - Post-processes the rendered message. - - The text to be post-processed. - JSON-encoded string. - Gets or sets a value indicating whether to apply JSON encoding. @@ -11664,6 +13825,47 @@ + + + Should forward slashes be escaped? If true, / will be converted to \/ + + + If not set explicitly then the value of the parent will be used as default. + + + + + + + + + + + + Left part of a text + + + + + Gets or sets the length in characters. + + + + + + Same as -property, so it can be used as ambient property. + + + ${message:truncate=80} + + + + + + + + + Converts the result of another layout output to lower case. @@ -11671,15 +13873,9 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - - - Post-processes the rendered message. - - Output to be post-processed. - Gets or sets a value indicating whether lower case conversion should be applied. @@ -11693,11 +13889,79 @@ + + + + + + + + + Render the non-raw value of an object. + + For performance and/or full (formatted) control of the output. + + + + Gets or sets a value indicating whether to disable the IRawValue-interface + + A value of true if IRawValue-interface should be ignored; otherwise, false. + + + + + + + + + + + Render a single property of a object + + + + + Gets or sets the object-property-navigation-path for lookup of nested property + + Shortcut for + + + + + + Gets or sets the object-property-navigation-path for lookup of nested property + + + + + + Format string for conversion from object to string. + + + + + + Gets or sets the culture used for rendering. + + + + + + + + + + + + Only outputs the inner layout when exception has been defined for log message. + + + Transforms the output of another layout. @@ -11705,14 +13969,19 @@ Output to be transform. Transformed text. - + - Renders the inner layout contents. + Outputs alternative layout when the inner layout produces empty result. - The log event. - - Contents of inner layout. - + + ${onhasproperties:, Properties\: ${all-event-properties}} + + + + + + + @@ -11738,16 +14007,9 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - - - Transforms the output of another layout. - - Output to be transform. - Transformed text. - Gets or sets the number of characters to pad the output to. @@ -11774,11 +14036,19 @@ Gets or sets a value indicating whether a value that has - been truncated (when is true) + been truncated (when is true) will be left-aligned (characters removed from the right) or right-aligned (characters removed from the left). The default is left alignment. + RegistryLayoutRenderer + + + + Transforms the output of another layout. + + Output to be transform. + Transformed text. @@ -11788,28 +14058,6 @@ ${replace:searchFor=\\n+:replaceWith=-:regex=true:inner=${message}} - - - Initializes the layout renderer. - - - - - Post-processes the rendered message. - - The text to be post-processed. - Post-processed text. - - - - A match evaluator for Regular Expression based replacing - - Input string. - Group name in the regex. - Replace value. - Match from regex. - Groups replaced with . - Gets or sets the text to search for. @@ -11853,11 +14101,39 @@ A value of true if whole words should be searched for; otherwise, false. + + + Compile the ? This can improve the performance, but at the costs of more memory usage. If false, the Regex Cache is used. + + + + + + Initializes the layout renderer. + + + + + Post-processes the rendered message. + + The text to be post-processed. + Post-processed text. + This class was created instead of simply using a lambda expression so that the "ThreadAgnosticAttributeTest" will pass + + + A match evaluator for Regular Expression based replacing + + Input string. + Group name in the regex. + Replace value. + Match from regex. + Groups replaced with . + Replaces newline characters from the result of another layout renderer with spaces. @@ -11865,47 +14141,46 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - - - Post-processes the rendered message. - - Output to be post-processed. - Gets or sets a value indicating the string that should be used for separating lines. + + + + + + + + + + + Right part of a text + + + + + Gets or sets the length in characters. + + + + + + + + Decodes text "encrypted" with ROT-13. - See http://en.wikipedia.org/wiki/ROT13. + See https://en.wikipedia.org/wiki/ROT13. - - - Encodes/Decodes ROT-13-encoded string. - - The string to be encoded/decoded. - Encoded/Decoded text. - - - - Encodes/Decodes ROT-13-encoded string. - - The string to be encoded/decoded. - - - - Post-processes the rendered message. - - Output to be transform. - Gets or sets the layout to be wrapped. @@ -11914,6 +14189,71 @@ This variable is for backwards compatibility + + + Encodes/Decodes ROT-13-encoded string. + + The string to be encoded/decoded. + Encoded/Decoded text. + + + + + + + + + + Encodes/Decodes ROT-13-encoded string. + + + + + Substring the result + + + ${substring:${level}:start=2:length=2} + ${substring:${level}:start=-2:length=2} + ${substring:Inner=${level}:start=2:length=2} + + + + + Initializes a new instance of the class. + + + + + Gets or sets the start index. + + Index + + + + + Gets or sets the length in characters. If null, then the whole string + + Index + + + + + + + + + + + Calculate start position + + 0 or positive number + + + + Calculate needed length + + 0 or positive number + Trims the whitespace from the result of another layout renderer. @@ -11921,15 +14261,9 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - - - Removes white-spaces from both sides of the provided target - - Output to be transform. - Gets or sets a value indicating whether lower case conversion should be applied. @@ -11937,6 +14271,12 @@ A value of true if lower case conversion should be applied; otherwise, false. + + + + + + Converts the result of another layout output to upper case. @@ -11949,15 +14289,9 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - - - Post-processes the rendered message. - - Output to be post-processed. - Gets or sets a value indicating whether upper case conversion should be applied. @@ -11971,6 +14305,12 @@ + + + + + + Encodes the result of another layout output for use with URLs. @@ -11978,16 +14318,9 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - - - Transforms the output of another layout. - - Output to be transform. - Transformed text. - Gets or sets a value indicating whether spaces should be translated to '+' or '%20'. @@ -12009,48 +14342,38 @@ A value of true if legacy encoding; otherwise, false for standard UTF8 encoding. + + + Transforms the output of another layout. + + Output to be transform. + Transformed text. + Outputs alternative layout when the inner layout produces empty result. - - - Transforms the output of another layout. - - Output to be transform. - - - - Renders the inner layout contents. - - The log event. - Initially empty for the result - Gets or sets the layout to be rendered when original layout produced empty result. + + + + + + + + + Only outputs the inner layout when the specified condition has been met. - - - Transforms the output of another layout. - - Output to be transform. - - - - Renders the inner layout contents. - - The log event. - Initially empty for the result - Gets or sets the condition that must be met for the layout to be printed. @@ -12061,6 +14384,16 @@ If is not met, print this layout. + + + + + + + + + + @@ -12069,16 +14402,9 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - - - Post-processes the rendered message. - - The text to be post-processed. - Post-processed text. - Gets or sets the line length for wrapping. @@ -12088,6 +14414,116 @@ + + + Post-processes the rendered message. + + The text to be post-processed. + Post-processed text. + + + + Base class for s which wrapping other s. + + This has the property (which is default) and can be used to wrap. + + + ${uppercase:${level}} //[DefaultParameter] + ${uppercase:Inner=${level}} + + + + + Gets or sets the wrapped layout. + + [DefaultParameter] so Inner: is not required if it's the first + + + + + + + + + Renders the inner message, processes it and appends it to the specified . + + The to append the rendered data to. + Logging event. + + + + Appends the rendered output from -layout and transforms the added output (when necessary) + + Logging event. + The to append the rendered data to. + Start position for any necessary transformation of . + + + + Transforms the output of another layout. + + Logging event. + Output to be transform. + Transformed text. + + + + Transforms the output of another layout. + + Output to be transform. + Transformed text. + + + + Renders the inner layout contents. + + The log event. + Contents of inner layout. + + + + Base class for s which wrapping other s. + + This expects the transformation to work on a + + + + + + + + Transforms the output of another layout. + + + Output to be transform. + + + + Transforms the output of another layout. + + Output to be transform. + + + + Renders the inner layout contents. + + + for the result + + + + + + + + + + + + + + + Converts the result of another layout output to be XML-compliant. @@ -12095,185 +14531,44 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - - - Post-processes the rendered message. - - The text to be post-processed. - Padded and trimmed string. - Gets or sets a value indicating whether to apply XML encoding. + Ensures always valid XML, but gives a performance hit + + + Gets or sets a value indicating whether to transform newlines (\r\n) into ( ) + + + + + + + + + A layout containing one or more nested layouts. - - - Abstract interface that layouts must implement. - - - - - Is this layout initialized? See - - - - - Converts a given text to a . - - Text to be converted. - object represented by the text. - - - - Implicitly converts the specified string to a . - - The layout string. - Instance of . - - - - Implicitly converts the specified string to a . - - The layout string. - The NLog factories to use when resolving layout renderers. - Instance of . - - - - Precalculates the layout for the specified log event and stores the result - in per-log event cache. - - Only if the layout doesn't have [ThreadAgnostic] and doens't contain layouts with [ThreadAgnostic]. - - The log event. - - Calling this method enables you to store the log event in a buffer - and/or potentially evaluate it in another thread even though the - layout may contain thread-dependent renderer. - - - - - Renders the event info in layout. - - The event info. - String representing log event. - - - - Renders the event info in layout to the provided target - - The event info. - Appends the string representing log event to target - Should rendering result be cached on LogEventInfo - - - - Valid default implementation of , when having implemented the optimized - - The logging event. - StringBuilder to help minimize allocations [optional]. - Should rendering result be cached on LogEventInfo - The rendered layout. - - - - Renders the layout for the specified logging event by invoking layout renderers. - - The logging event. - Initially empty for the result - - - - Initializes this instance. - - The configuration. - - - - Closes this instance. - - - - - Initializes this instance. - - The configuration. - - - - Closes this instance. - - - - - Initializes the layout. - - - - - Closes the layout. - - - - - Renders the layout for the specified logging event by invoking layout renderers. - - The logging event. - The rendered layout. - - - - Register a custom Layout. - - Short-cut for registing to default - Type of the Layout. - Name of the Layout. - - - - Register a custom Layout. - - Short-cut for registing to default - Type of the Layout. - Name of the Layout. - - - - Gets a value indicating whether this layout is thread-agnostic (can be rendered on any thread). - - - Layout is thread-agnostic if it has been marked with [ThreadAgnostic] attribute and all its children are - like that as well. - - Thread-agnostic layouts only use contents of for its output. - - - - - Gets the level of stack trace information required for rendering. - - - - - Gets the logging configuration this target is part of. - - Initializes a new instance of the class. + + + Gets the inner layouts. + + + Initializes the layout. @@ -12291,18 +14586,18 @@ Formats the log event relying on inner layouts. The logging event. - Initially empty for the result + for the result Closes the layout. - + - Gets the inner layouts. + Generate description of Compound Layout - + Compound Layout String Description @@ -12311,12 +14606,12 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. The name of the column. The layout of the column. @@ -12333,6 +14628,15 @@ + + + Gets or sets the override of Quoting mode + + + and are faster than the default + + + Specifies allowed column delimiters. @@ -12377,75 +14681,13 @@ A specialized layout that renders CSV-formatted events. - If is set, then the header generation with columnnames will be disabled. - - - - A specialized layout that supports header and footer. - - - - - Renders the layout for the specified logging event by invoking layout renderers. - - The logging event. - The rendered layout. - - - - Renders the layout for the specified logging event by invoking layout renderers. - - The logging event. - Initially empty for the result - - - - Gets or sets the body layout (can be repeated multiple times). - - - - - - Gets or sets the header layout. - - - - - - Gets or sets the footer layout. - - + If is set, then the header generation with column names will be disabled. Initializes a new instance of the class. - - - Initializes the layout. - - - - - Formats the log event for write. - - The log event to be formatted. - A string representation of the log event. - - - - Formats the log event for write. - - The logging event. - Initially empty for the result - - - - Get the headers with the column names. - - - Gets the array of parameters to be passed. @@ -12483,6 +14725,31 @@ + + + Initializes the layout. + + + + + Formats the log event for write. + + The log event to be formatted. + A string representation of the log event. + + + + Formats the log event for write. + + The logging event. + for the result + + + + Get the headers with the column names. + + + Header with column names for CSV layout. @@ -12506,7 +14773,13 @@ Renders the layout for the specified logging event by invoking layout renderers. The logging event. - Initially empty for the result + for the result + + + + Generate description of CSV Layout + + CSV Layout String Description @@ -12515,18 +14788,17 @@ - Quote all column. + Quote all column (Fast) - Quote nothing. + Quote nothing (Very fast) - Quote only whose values contain the quote symbol or - the separator. + Quote only whose values contain the quote symbol or the separator (Slow) @@ -12536,19 +14808,19 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. The name of the attribute. The layout of the attribute's value. - Initializes a new instance of the class. + Initializes a new instance of the class. The name of the attribute. The layout of the attribute's value. @@ -12558,21 +14830,40 @@ Gets or sets the name of the attribute. + Gets or sets the layout that will be rendered as the attribute's value. + - Determines wether or not this attribute will be Json encoded. + Determines whether or not this attribute will be Json encoded. + Gets or sets a value indicating whether to escape non-ascii characters + + + + + Should forward slashes be escaped? If true, / will be converted to \/ + + + If not set explicitly then the value of the parent will be used as default. + + + + + + Gets or sets whether an attribute with empty value should be included in the output + + @@ -12584,17 +14875,91 @@ Initializes a new instance of the class. + + + Gets the array of attributes' configurations. + + + + + + Gets or sets the option to suppress the extra spaces in the output json + + + + + + Gets or sets the option to render the empty object value {} + + + + + + Gets or sets a value indicating whether to include contents of the dictionary. + + + + + + Gets or sets a value indicating whether to include contents of the dictionary. + + + + + + Gets or sets a value indicating whether to include contents of the dictionary. + + + + + + Gets or sets the option to include all properties from the log event (as JSON) + + + + + + Gets or sets the option to exclude null/empty properties from the log event (as JSON) + + + + + + List of property names to exclude when is true + + + + + + How far should the JSON serializer follow object references before backing off + + + + + + Should forward slashes be escaped? If true, / will be converted to \/ + + + If not set explicitly then the value of the parent will be used as default. + + + Initializes the layout. + + + Closes the layout. + + Formats the log event as a JSON document for writing. The logging event. - Initially empty for the result + for the result @@ -12603,41 +14968,194 @@ The log event to be formatted. A JSON string representation of the log event. - + - Gets the array of attributes' configurations. + Generate description of JSON Layout - + JSON Layout String Description - + - Gets or sets the option to suppress the extra spaces in the output json + Abstract interface that layouts must implement. - + - Gets or sets the option to render the empty object value {} + Is this layout initialized? See - + - Gets or sets a value indicating whether to include contents of the dictionary. + Gets a value indicating whether this layout is thread-agnostic (can be rendered on any thread). + + + Layout is thread-agnostic if it has been marked with [ThreadAgnostic] attribute and all its children are + like that as well. + + Thread-agnostic layouts only use contents of for its output. + + + + + Gets the level of stack trace information required for rendering. - + - Gets or sets a value indicating whether to include contents of the dictionary. + Gets the logging configuration this target is part of. - + - Gets or sets the option to include all properties from the log events + Converts a given text to a . + + Text to be converted. + object represented by the text. + + + + Implicitly converts the specified string to a . + + The layout string. + Instance of .' + + + + Implicitly converts the specified string to a . + + The layout string. + The NLog factories to use when resolving layout renderers. + Instance of . + + + + Implicitly converts the specified string to a . + + The layout string. + Whether should be thrown on parse errors (false = replace unrecognized tokens with a space). + Instance of . + + + + Create a from a lambda method. + + Method that renders the layout. + Tell if method is safe for concurrent threading. + Instance of . + + + + Precalculates the layout for the specified log event and stores the result + in per-log event cache. + + Only if the layout doesn't have [ThreadAgnostic] and doesn't contain layouts with [ThreadAgnostic]. + + The log event. + + Calling this method enables you to store the log event in a buffer + and/or potentially evaluate it in another thread even though the + layout may contain thread-dependent renderer. + + + + + Renders the event info in layout. + + The event info. + String representing log event. + + + + Optimized version of for internal Layouts. Works best + when override of is available. + + The event info. + Appends the string representing log event to target + Should rendering result be cached on LogEventInfo + + + + Valid default implementation of , when having implemented the optimized + + The logging event. + StringBuilder to help minimize allocations [optional]. + The rendered layout. + + + + Renders the layout for the specified logging event by invoking layout renderers. + + The logging event. + for the result + + + + Initializes this instance. + + The configuration. + + + + Closes this instance. - + - List of property names to exclude when is true + Initializes this instance. + The configuration. + + + + Closes this instance. + + + + + Initializes the layout. + + + + + Closes the layout. + + + + + Renders the layout for the specified logging event by invoking layout renderers. + + The logging event. + The rendered layout. + + + + Register a custom Layout. + + Short-cut for registering to default + Type of the Layout. + Name of the Layout. + + + + Register a custom Layout. + + Short-cut for registering to default + Type of the Layout. + Name of the Layout. + + + + Optimized version of for internal Layouts, when + override of is available. + + + + + Try get value + + + rawValue if return result is true + false if we could not determine the rawValue @@ -12646,7 +15164,7 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. Layout name. @@ -12655,6 +15173,70 @@ Parses layout strings. + + + Add to + + + + + + + Options available for + + + + + Default options + + + + + Layout renderer method can handle concurrent threads + + + + + Layout renderer method is agnostic to current thread context. This means it will render the same result indepdent of thread-context. + + + + + A specialized layout that supports header and footer. + + + + + Gets or sets the body layout (can be repeated multiple times). + + + + + + Gets or sets the header layout. + + + + + + Gets or sets the footer layout. + + + + + + Renders the layout for the specified logging event by invoking layout renderers. + + The logging event. + The rendered layout. + + + + Renders the layout for the specified logging event by invoking layout renderers. + + The logging event. + for the result. + A specialized layout that renders Log4j-compatible XML events. @@ -12665,9 +15247,63 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. + + + Gets the instance that renders log events. + + + + + Gets the collection of parameters. Each parameter contains a mapping + between NLog layout and a named parameter. + + + + + + Gets or sets a value indicating whether to include contents of the dictionary. + + + + + + Gets or sets the option to include all properties from the log events + + + + + + Gets or sets a value indicating whether to include contents of the stack. + + + + + + Gets or sets a value indicating whether to include contents of the dictionary. + + + + + + Gets or sets a value indicating whether to include contents of the stack. + + + + + + Gets or sets a value indicating whether to include call site (class and method name) in the information sent over the network. + + + + + + Gets or sets a value indicating whether to include source info (file name and line number) in the information sent over the network. + + + Renders the layout for the specified logging event by invoking layout renderers. @@ -12680,30 +15316,7 @@ Renders the layout for the specified logging event by invoking layout renderers. The logging event. - Initially empty for the result - - - - Gets the instance that renders log events. - - - - - Gets or sets a value indicating whether to include contents of the dictionary. - - - - - - Gets or sets a value indicating whether to include contents of the dictionary. - - - - - - Gets or sets the option to include all properties from the log events - - + for the result @@ -12716,12 +15329,12 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. The layout string to parse. @@ -12732,6 +15345,50 @@ The layout string to parse. The NLog factories to use when creating references to layout renderers. + + + Initializes a new instance of the class. + + The layout string to parse. + The NLog factories to use when creating references to layout renderers. + Whether should be thrown on parse errors. + + + + Original text before compile to Layout renderes + + + + + Gets or sets the layout text. + + + + + + Is the message fixed? (no Layout renderers used) + + + + + Get the fixed text. Only set when is true + + + + + Is the message a simple formatted string? (Can skip StringBuilder) + + + + + Gets a collection of objects that make up this layout. + + + + + Gets the level of stack trace information required for rendering. + + Converts a text to a simple layout. @@ -12765,7 +15422,7 @@ Evaluates the specified text by expanding all layout renderers - in new context. + in new context. The text to be evaluated. The input text with all occurrences of ${} replaced with @@ -12780,56 +15437,284 @@ + + + + + + + + + + + + + + + + + XML attribute. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The name of the attribute. + The layout of the attribute's value. + + + + Initializes a new instance of the class. + + The name of the attribute. + The layout of the attribute's value. + Encode value with xml-encode + + + + Gets or sets the name of the attribute. + + + + + + Gets or sets the layout that will be rendered as the attribute's value. + + + + + + Determines whether or not this attribute will be Xml encoded. + + + + + + Gets or sets whether an attribute with empty value should be included in the output + + + + + + A XML Element + + + + + + + + + + + Name of the element + + + + + + Value inside the element + + + + + + Determines whether or not this attribute will be Xml encoded. + + + + + + A specialized layout that renders XML-formatted events. + + + + + Initializes a new instance of the class. + + The name of the top XML node + The value of the top XML node + + + + Name of the XML element + + Upgrade to private protected when using C# 7.2 + + + + + Value inside the XML element + + Upgrade to private protected when using C# 7.2 + + + + + Auto indent and create new lines + + + + + + Gets the array of xml 'elements' configurations. + + + + + + Gets the array of 'attributes' configurations for the element + + + + + + Gets or sets whether a ElementValue with empty value should be included in the output + + + + + + Gets or sets a value indicating whether to include contents of the dictionary. + + + + + + Gets or sets a value indicating whether to include contents of the dictionary. + + + + + + Gets or sets the option to include all properties from the log event (as XML) + + + + + + List of property names to exclude when is true + + + + + + XML element name to use when rendering properties + + + Support string-format where {0} means property-key-name + + Skips closing element tag when having configured + + + + + + XML attribute name to use when rendering property-key + + When null (or empty) then key-attribute is not included + + + Will replace newlines in attribute-value with + + + + + + XML attribute name to use when rendering property-value + + When null (or empty) then value-attribute is not included and + value is formatted as XML-element-value + + + Skips closing element tag when using attribute for value + + Will replace newlines in attribute-value with + + + + + + XML element name to use for rendering IList-collections items + + + + + + How far should the XML serializer follow object references before backing off + + + + Initializes the layout. - + - Renders the layout for the specified logging event by invoking layout renderers - that make up the event. + Formats the log event as a XML document for writing. The logging event. - The rendered layout. + for the result - + - Renders the layout for the specified logging event by invoking layout renderers - that make up the event. + Formats the log event as a XML document for writing. - The logging event. - Initially empty for the result + The log event to be formatted. + A XML string representation of the log event. - + - Original text before compile to Layout renderes + write attribute, only if is not empty + + + + + rendered + + + + Generate description of XML Layout + + XML Layout String Description + + + + A specialized layout that renders XML-formatted events. - + - Gets or sets the layout text. - - - - - - Is the message fixed? (no Layout renderers used) + Initializes a new instance of the class. - - - Get the fixed text. Only set when is true - + + - + - Gets a collection of objects that make up this layout. + Name of the root XML element + - + - Gets the level of stack trace information required for rendering. + Value inside the root XML element + + + + + Determines whether or not this attribute will be Xml encoded. + + @@ -12841,22 +15726,50 @@ Gets the date of the first log event created. + + + The formatted log message. + + + + + The log message including any parameter placeholders + + - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. Log level. Logger name. Log message including parameter placeholders. + + + Initializes a new instance of the class. + + Log level. + Logger name. + Log message including parameter placeholders. + Already parsed message template parameters. + + + + Initializes a new instance of the class. + + Log level. + Override default Logger name. Default is used when null + Log message. + List of event-properties + - Initializes a new instance of the class. + Initializes a new instance of the class. Log level. Logger name. @@ -12866,7 +15779,7 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. Log level. Logger name. @@ -12875,6 +15788,136 @@ Parameter array. Exception information. + + + Gets the unique identifier of log event which is automatically generated + and monotonously increasing. + + + + + Gets or sets the timestamp of the logging event. + + + + + Gets or sets the level of the logging event. + + + + + Gets a value indicating whether stack trace has been set for this event. + + + + + Gets the stack frame of the method that did the logging. + + + + + Gets the number index of the stack frame that represents the user + code (not the NLog code). + + + + + Gets the entire stack trace. + + + + + Gets the callsite class name + + + + + Gets the callsite member function name + + + + + Gets the callsite source file path + + + + + Gets the callsite source file line number + + + + + Gets or sets the exception information. + + + + + Gets or sets the logger name. + + + + + Gets the logger short name. + + This property was marked as obsolete on NLog 2.0 and it may be removed in a future release. + + + + Gets or sets the log message including any parameter placeholders. + + + + + Gets or sets the parameter values or null if no parameters have been specified. + + + + + Gets or sets the format provider that was provided while logging or + when no formatProvider was specified. + + + + + Gets or sets the message formatter for generating + Uses string.Format(...) when nothing else has been configured. + + + + + Gets the formatted message. + + + + + Checks if any per-event properties (Without allocation) + + + + + Gets the dictionary of per-event context properties. + + + + + Gets the dictionary of per-event context properties. + Internal helper for the PropertiesDictionary type. + + Create the event-properties dictionary, even if no initial template parameters + Provided when having parsed the message template and capture template parameters (else null) + + + + + Gets the named parameters extracted from parsing as MessageTemplate + + + + + Gets the dictionary of per-event context properties. + + This property was marked as obsolete on NLog 2.0 and it may be removed in a future release. + Creates the null event. @@ -12963,109 +16006,71 @@ Sets the stack trace for the event info. The stack trace. - Index of the first user stack frame within the stack trace. + Index of the first user stack frame within the stack trace (Negative means NLog should skip stackframes from System-assemblies). - + - Gets the unique identifier of log event which is automatically generated - and monotonously increasing. + Sets the details retrieved from the Caller Information Attributes + + + + - + - Gets or sets the timestamp of the logging event. + Set the + true = Always, false = Never, null = Auto Detect - + - Gets or sets the level of the logging event. + Specialized LogFactory that can return instances of custom logger types. + Use this only when a custom Logger type is defined. + The type of the logger to be returned. Must inherit from . - + - Gets a value indicating whether stack trace has been set for this event. + Gets the logger with type . + The logger name. + An instance of . - + - Gets the stack frame of the method that did the logging. + Gets a custom logger with the full name of the current class (so namespace and class name) and type . - - - - Gets the number index of the stack frame that represents the user - code (not the NLog code). - - - - - Gets the entire stack trace. - - - - - Gets or sets the exception information. - - - - - Gets or sets the logger name. - - - - - Gets the logger short name. - - This property was marked as obsolete on NLog 2.0 and it may be removed in a future release. - - - - Gets or sets the log message including any parameter placeholders. - - - - - Gets or sets the parameter values or null if no parameters have been specified. - - - - - Gets or sets the format provider that was provided while logging or - when no formatProvider was specified. - - - - - Gets the formatted message. - - - - - Checks if any per-event context properties (Without allocation) - - - - - Gets the dictionary of per-event context properties. - - - - - Gets the dictionary of per-event context properties. - - This property was marked as obsolete on NLog 2.0 and it may be removed in a future release. + An instance of . + This is a slow-running method. + Make sure you're not doing this in a loop. Creates and manages instances of objects. - + + + Internal for unit tests + + + Overwrite possible file paths (including filename) for possible NLog config files. When this property is null, the default file paths ( are used. + + + Occurs when logging changes. + + + + + Occurs when logging gets reloaded. + + Initializes static members of the LogManager class. @@ -13073,21 +16078,94 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. The config. + + + Initializes a new instance of the class. + + The config loader + The custom AppEnvironmnet override + + + + Gets the current . + + + + + Gets or sets a value indicating whether exceptions should be thrown. See also . + + A value of true if exception should be thrown; otherwise, false. + By default exceptions are not thrown under any circumstances. + + + + Gets or sets a value indicating whether should be thrown. + + If null then is used. + + A value of true if exception should be thrown; otherwise, false. + + This option is for backwards-compatibility. + By default exceptions are not thrown under any circumstances. + + + + + Gets or sets a value indicating whether Variables should be kept on configuration reload. + Default value - false. + + + + + Gets or sets a value indicating whether to automatically call + on AppDomain.Unload or AppDomain.ProcessExit + + + + + Gets or sets the current logging configuration. After setting this property all + existing loggers will be re-configured, so there is no need to call + manually. + + + + + Gets or sets the global log level threshold. Log events below this threshold are not logged. + + + + + Gets the default culture info to use as . + + + Specific culture info or null to use + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Begins configuration of the LogFactory options using fluent interface + + + + + Begins configuration of the LogFactory options using fluent interface + + Creates a logger that discards all log messages. @@ -13096,7 +16174,7 @@ - Gets the logger with the name of the current class. + Gets the logger with the full name of the current class, so namespace and class name. The logger. This is a slow-running method. @@ -13104,7 +16182,9 @@ - Gets the logger with the name of the current class. + Gets the logger with the full name of the current class, so namespace and class name. + Use to create instance of a custom . + If you haven't defined your own class, then use the overload without the type parameter. The logger with type . Type of the logger @@ -13113,7 +16193,9 @@ - Gets a custom logger with the name of the current class. Use to pass the type of the needed Logger. + Gets a custom logger with the full name of the current class, so namespace and class name. + Use to create instance of a custom . + If you haven't defined your own class, then use the overload without the loggerType. The type of the logger to create. The type must inherit from The logger of type . @@ -13131,6 +16213,8 @@ Gets the specified named logger. + Use to create instance of a custom . + If you haven't defined your own class, then use the overload without the type parameter. Name of the logger. Type of the logger @@ -13139,10 +16223,12 @@ - Gets the specified named logger. Use to pass the type of the needed Logger. + Gets the specified named logger. + Use to create instance of a custom . + If you haven't defined your own class, then use the overload without the loggerType. Name of the logger. - The type of the logger to create. The type must inherit from . + The type of the logger to create. The type must inherit from . The logger of type . Multiple calls to GetLogger with the same argument aren't guaranteed to return the same logger reference. @@ -13193,6 +16279,15 @@ The asynchronous continuation. Maximum time to allow for the flush. Any messages after that time will be discarded. + + + Flushes any pending log messages on all appenders. + + Config containing Targets to Flush + Flush completed notification (success / timeout) + Optional timeout that guarantees that completed notication is called. + + Decreases the log enable counter and if it reaches -1 the logs are disabled. @@ -13237,9 +16332,9 @@ - Returns if logging is currently enabled. + Returns if logging is currently enabled. - A value of if logging is currently enabled, + A value of if logging is currently enabled, otherwise. Logging is enabled if the number of calls is greater than or equal to calls. @@ -13256,9 +16351,9 @@ Event arguments - + - Currently this logfactory is disposing? + Currently this is disposing? @@ -13268,87 +16363,40 @@ True to release both managed and unmanaged resources; false to release only unmanaged resources. + + + Dispose all targets, and shutdown logging. + + Get file paths (including filename) for the possible NLog config files. - The filepaths to the possible config file + The file paths to the possible config file + + + + Get file paths (including filename) for the possible NLog config files. + + The file paths to the possible config file Overwrite the paths (including filename) for the possible NLog config files. - The filepaths to the possible config file + The file paths to the possible config file Clear the candidate file paths and return to the defaults. - + - Get default file paths (including filename) for possible NLog config files. + Loads logging configuration from file (Currently only XML configuration files supported) - - - - Occurs when logging changes. - - - - - Occurs when logging gets reloaded. - - - - - Gets the current . - - - - - Gets or sets a value indicating whether exceptions should be thrown. See also . - - A value of true if exception should be thrown; otherwise, false. - By default exceptions are not thrown under any circumstances. - - - - Gets or sets a value indicating whether should be thrown. - - If null then is used. - - A value of true if exception should be thrown; otherwise, false. - - This option is for backwards-compatiblity. - By default exceptions are not thrown under any circumstances. - - - - - Gets or sets a value indicating whether Variables should be kept on configuration reload. - Default value - false. - - - - - Gets or sets the current logging configuration. After setting this property all - existing loggers will be re-configured, so there is no need to call - manually. - - - - - Gets or sets the global log level threshold. Log events below this threshold are not logged. - - - - - Gets the default culture info to use as . - - - Specific culture info or null to use - + Configuration file to be read + LogFactory instance for fluent interface @@ -13374,7 +16422,7 @@ Determines if two objects of the same type are equal in value. - Other object to compare to. + Other object to compare to. True if objects are equal, false otherwise. @@ -13389,6 +16437,11 @@ + + + Internal for unit tests + + Enables logging in implementation. @@ -13396,7 +16449,7 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The factory. @@ -13405,301 +16458,28 @@ Enables logging. - - - Specialized LogFactory that can return instances of custom logger types. - - The type of the logger to be returned. Must inherit from . - - - - Gets the logger with type . - - The logger name. - An instance of . - - - - Gets a custom logger with the name of the current class and type . - - An instance of . - This is a slow-running method. - Make sure you're not doing this in a loop. - - - Provides logging interface and utility functions. - - - Logging methods which only are executed when the DEBUG conditional compilation symbol is set. - - - The DEBUG conditional compilation symbol is default enabled (only) in a debug build. + + Logging methods which only are executed when the DEBUG conditional compilation symbol is set. - If the DEBUG conditional compilation symbol isn't set in the calling library, the compiler will remove all the invocations to these methods. - This could lead to better performance. - - See: https://msdn.microsoft.com/en-us/library/4xssyw96%28v=vs.90%29.aspx - + Remarks: + The DEBUG conditional compilation symbol is default enabled (only) in a debug build. + + If the DEBUG conditional compilation symbol isn't set in the calling library, the compiler will remove all the invocations to these methods. + This could lead to better performance. + + See: https://msdn.microsoft.com/en-us/library/4xssyw96%28v=vs.90%29.aspx + Provides logging interface and utility functions. Auto-generated Logger members for binary compatibility with NLog 1.0. - - - Initializes a new instance of the class. + Provides logging interface and utility functions. - - - Gets a value indicating whether logging is enabled for the specified level. - - Log level to be checked. - A value of if logging is enabled for the specified level, otherwise it returns . - - - - Writes the specified diagnostic message. - - Log event. - - - - Writes the specified diagnostic message. - - The name of the type that wraps Logger. - Log event. - - - - Writes the diagnostic message at the specified level using the specified format provider and format parameters. - - - Writes the diagnostic message at the specified level. - - Type of the value. - The log level. - The value to be written. - - - - Writes the diagnostic message at the specified level. - - Type of the value. - The log level. - An IFormatProvider that supplies culture-specific formatting information. - The value to be written. - - - - Writes the diagnostic message at the specified level. - - The log level. - A function returning message to be written. Function is not evaluated if logging is not enabled. - - - - Writes the diagnostic message and exception at the specified level. - - The log level. - A to be written. - An exception to be logged. - This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. - - - - Writes the diagnostic message at the specified level using the specified parameters and formatting them with the supplied format provider. - - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing format items. - Arguments to format. - - - - Writes the diagnostic message at the specified level. - - The log level. - Log message. - - - - Writes the diagnostic message at the specified level using the specified parameters. - - The log level. - A containing format items. - Arguments to format. - - - - Writes the diagnostic message and exception at the specified level. - - The log level. - A to be written. - An exception to be logged. - This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. - - - - Writes the diagnostic message and exception at the specified level. - - The log level. - A to be written. - Arguments to format. - An exception to be logged. - - - - Writes the diagnostic message and exception at the specified level. - - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A to be written. - Arguments to format. - An exception to be logged. - - - - Writes the diagnostic message at the specified level using the specified parameter and formatting it with the supplied format provider. - - The type of the argument. - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified parameter. - - The type of the argument. - The log level. - A containing one format item. - The argument to format. - - - - Writes the diagnostic message at the specified level using the specified arguments formatting it with the supplied format provider. - - The type of the first argument. - The type of the second argument. - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The first argument to format. - The second argument to format. - - - - Writes the diagnostic message at the specified level using the specified parameters. - - The type of the first argument. - The type of the second argument. - The log level. - A containing one format item. - The first argument to format. - The second argument to format. - - - - Writes the diagnostic message at the specified level using the specified arguments formatting it with the supplied format provider. - - The type of the first argument. - The type of the second argument. - The type of the third argument. - The log level. - An IFormatProvider that supplies culture-specific formatting information. - A containing one format item. - The first argument to format. - The second argument to format. - The third argument to format. - - - - Writes the diagnostic message at the specified level using the specified parameters. - - The type of the first argument. - The type of the second argument. - The type of the third argument. - The log level. - A containing one format item. - The first argument to format. - The second argument to format. - The third argument to format. - - - - Runs the provided action. If the action throws, the exception is logged at Error level. The exception is not propagated outside of this method. - - Action to execute. - - - - Runs the provided function and returns its result. If an exception is thrown, it is logged at Error level. - The exception is not propagated outside of this method; a default value is returned instead. - - Return type of the provided function. - Function to run. - Result returned by the provided function or the default value of type in case of exception. - - - - Runs the provided function and returns its result. If an exception is thrown, it is logged at Error level. - The exception is not propagated outside of this method; a fallback value is returned instead. - - Return type of the provided function. - Function to run. - Fallback value to return in case of exception. - Result returned by the provided function or fallback value in case of exception. - - - - Logs an exception is logged at Error level if the provided task does not run to completion. - - The task for which to log an error if it does not run to completion. - This method is useful in fire-and-forget situations, where application logic does not depend on completion of task. This method is avoids C# warning CS4014 in such situations. - - - - Returns a task that completes when a specified task to completes. If the task does not run to completion, an exception is logged at Error level. The returned task always runs to completion. - - The task for which to log an error if it does not run to completion. - A task that completes in the state when completes. - - - - Runs async action. If the action throws, the exception is logged at Error level. The exception is not propagated outside of this method. - - Async action to execute. - - - - Runs the provided async function and returns its result. If the task does not run to completion, an exception is logged at Error level. - The exception is not propagated outside of this method; a default value is returned instead. - - Return type of the provided function. - Async function to run. - A task that represents the completion of the supplied task. If the supplied task ends in the state, the result of the new task will be the result of the supplied task; otherwise, the result of the new task will be the default value of type . - - - - Runs the provided async function and returns its result. If the task does not run to completion, an exception is logged at Error level. - The exception is not propagated outside of this method; a fallback value is returned instead. - - Return type of the provided function. - Async function to run. - Fallback value to return if the task does not end in the state. - A task that represents the completion of the supplied task. If the supplied task ends in the state, the result of the new task will be the result of the supplied task; otherwise, the result of the new task will be the fallback value. - - - - Raises the event when the logger is reconfigured. - - Event arguments - Writes the diagnostic message at the Debug level using the specified format provider and format parameters. @@ -14310,6 +17090,42 @@ A containing one format item. The argument to format. + + + Gets a value indicating whether logging is enabled for the Trace level. + + A value of if logging is enabled for the Trace level, otherwise it returns . + + + + Gets a value indicating whether logging is enabled for the Debug level. + + A value of if logging is enabled for the Debug level, otherwise it returns . + + + + Gets a value indicating whether logging is enabled for the Info level. + + A value of if logging is enabled for the Info level, otherwise it returns . + + + + Gets a value indicating whether logging is enabled for the Warn level. + + A value of if logging is enabled for the Warn level, otherwise it returns . + + + + Gets a value indicating whether logging is enabled for the Error level. + + A value of if logging is enabled for the Error level, otherwise it returns . + + + + Gets a value indicating whether logging is enabled for the Fatal level. + + A value of if logging is enabled for the Fatal level, otherwise it returns . + Writes the diagnostic message at the Trace level using the specified format provider and format parameters. @@ -16803,6 +19619,11 @@ A containing one format item. The argument to format. + + + Initializes a new instance of the class. + + Occurs when logger configuration changes. @@ -16818,110 +19639,302 @@ Gets the factory that created this logger. - + - Gets a value indicating whether logging is enabled for the Trace level. + Collection of context properties for the Logger. The logger will append it for all log events - A value of if logging is enabled for the Trace level, otherwise it returns . + + It is recommended to use for modifying context properties + when same named logger is used at multiple locations or shared by different thread contexts. + - + - Gets a value indicating whether logging is enabled for the Debug level. + Gets a value indicating whether logging is enabled for the specified level. - A value of if logging is enabled for the Debug level, otherwise it returns . + Log level to be checked. + A value of if logging is enabled for the specified level, otherwise it returns . - + - Gets a value indicating whether logging is enabled for the Info level. + Creates new logger that automatically appends the specified property to all log events (without changing current logger) - A value of if logging is enabled for the Info level, otherwise it returns . + Property Name + Property Value + New Logger object that automatically appends specified property - - - Gets a value indicating whether logging is enabled for the Warn level. - - A value of if logging is enabled for the Warn level, otherwise it returns . + + + Updates the specified context property for the current logger. The logger will append it for all log events. + + It could be rendered with ${event-properties:YOURNAME} + + With property, all properties could be changed. + + + Will affect all locations/contexts that makes use of the same named logger object. + + Property Name + Property Value + + It is recommended to use for modifying context properties + when same named logger is used at multiple locations or shared by different thread contexts. + - + - Gets a value indicating whether logging is enabled for the Error level. + Writes the specified diagnostic message. - A value of if logging is enabled for the Error level, otherwise it returns . + Log event. - + - Gets a value indicating whether logging is enabled for the Fatal level. + Writes the specified diagnostic message. - A value of if logging is enabled for the Fatal level, otherwise it returns . + The name of the type that wraps Logger. + Log event. + + + + Writes the diagnostic message at the specified level using the specified format provider and format parameters. + + + Writes the diagnostic message at the specified level. + + Type of the value. + The log level. + The value to be written. + + + + Writes the diagnostic message at the specified level. + + Type of the value. + The log level. + An IFormatProvider that supplies culture-specific formatting information. + The value to be written. + + + + Writes the diagnostic message at the specified level. + + The log level. + A function returning message to be written. Function is not evaluated if logging is not enabled. + + + + Writes the diagnostic message and exception at the specified level. + + The log level. + A to be written. + An exception to be logged. + This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. + + + + Writes the diagnostic message at the specified level using the specified parameters and formatting them with the supplied format provider. + + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing format items. + Arguments to format. + + + + Writes the diagnostic message at the specified level. + + The log level. + Log message. + + + + Writes the diagnostic message at the specified level using the specified parameters. + + The log level. + A containing format items. + Arguments to format. + + + + Writes the diagnostic message and exception at the specified level. + + The log level. + A to be written. + An exception to be logged. + This method was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. + + + + Writes the diagnostic message and exception at the specified level. + + The log level. + A to be written. + Arguments to format. + An exception to be logged. + + + + Writes the diagnostic message and exception at the specified level. + + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A to be written. + Arguments to format. + An exception to be logged. + + + + Writes the diagnostic message at the specified level using the specified parameter and formatting it with the supplied format provider. + + The type of the argument. + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified parameter. + + The type of the argument. + The log level. + A containing one format item. + The argument to format. + + + + Writes the diagnostic message at the specified level using the specified arguments formatting it with the supplied format provider. + + The type of the first argument. + The type of the second argument. + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The first argument to format. + The second argument to format. + + + + Writes the diagnostic message at the specified level using the specified parameters. + + The type of the first argument. + The type of the second argument. + The log level. + A containing one format item. + The first argument to format. + The second argument to format. + + + + Writes the diagnostic message at the specified level using the specified arguments formatting it with the supplied format provider. + + The type of the first argument. + The type of the second argument. + The type of the third argument. + The log level. + An IFormatProvider that supplies culture-specific formatting information. + A containing one format item. + The first argument to format. + The second argument to format. + The third argument to format. + + + + Writes the diagnostic message at the specified level using the specified parameters. + + The type of the first argument. + The type of the second argument. + The type of the third argument. + The log level. + A containing one format item. + The first argument to format. + The second argument to format. + The third argument to format. + + + + Runs the provided action. If the action throws, the exception is logged at Error level. The exception is not propagated outside of this method. + + Action to execute. + + + + Runs the provided function and returns its result. If an exception is thrown, it is logged at Error level. + The exception is not propagated outside of this method; a default value is returned instead. + + Return type of the provided function. + Function to run. + Result returned by the provided function or the default value of type in case of exception. + + + + Runs the provided function and returns its result. If an exception is thrown, it is logged at Error level. + The exception is not propagated outside of this method; a fallback value is returned instead. + + Return type of the provided function. + Function to run. + Fallback value to return in case of exception. + Result returned by the provided function or fallback value in case of exception. + + + + Logs an exception is logged at Error level if the provided task does not run to completion. + + The task for which to log an error if it does not run to completion. + This method is useful in fire-and-forget situations, where application logic does not depend on completion of task. This method is avoids C# warning CS4014 in such situations. + + + + Returns a task that completes when a specified task to completes. If the task does not run to completion, an exception is logged at Error level. The returned task always runs to completion. + + The task for which to log an error if it does not run to completion. + A task that completes in the state when completes. + + + + Runs async action. If the action throws, the exception is logged at Error level. The exception is not propagated outside of this method. + + Async action to execute. + + + + Runs the provided async function and returns its result. If the task does not run to completion, an exception is logged at Error level. + The exception is not propagated outside of this method; a default value is returned instead. + + Return type of the provided function. + Async function to run. + A task that represents the completion of the supplied task. If the supplied task ends in the state, the result of the new task will be the result of the supplied task; otherwise, the result of the new task will be the default value of type . + + + + Runs the provided async function and returns its result. If the task does not run to completion, an exception is logged at Error level. + The exception is not propagated outside of this method; a fallback value is returned instead. + + Return type of the provided function. + Async function to run. + Fallback value to return if the task does not end in the state. + A task that represents the completion of the supplied task. If the supplied task ends in the state, the result of the new task will be the result of the supplied task; otherwise, the result of the new task will be the fallback value. + + + + Raises the event when the logger is reconfigured. + + Event arguments Implementation of logging engine. - - - Finds first user stack frame in a stack trace - - The stack trace of the logging method invocation - Type of the logger or logger wrapper. This is still Logger if it's a subclass of Logger. - Index of the first user stack frame or 0 if all stack frames are non-user - - - - Get the index which correspondens to the calling method. - - This is most of the time the first index after . - - all the frames of the stacktrace - frames which all hiddenAssemblies are removed - index on stacktrace - - - - Assembly to skip? - - Find assembly via this frame. - true, we should skip. - - - - Is this the type of the logger? - - get type of this logger in this frame. - Type of the logger. - - - + Gets the filter result. The filter chain. The log event. + default result if there are no filters, or none of the filters decides. The result of the filter. - - - Stackframe with correspending index on the stracktrace - - - - - New item - - Index of on the stack. - A stackframe - - - - Index of on the stack. - - - - - A stackframe - - Defines available log levels. @@ -16962,6 +19975,17 @@ Off log level. + + + Gets all the available log levels (Trace, Debug, Info, Warn, Error, Fatal, Off). + + + + + Gets all the log levels that can be used to log events (Trace, Debug, Info, Warn, Error, Fatal) + i.e LogLevel.Off is excluded. + + Initializes a new instance of . @@ -16969,6 +19993,16 @@ The log level name. The log level ordinal number. + + + Gets the name of the log level. + + + + + Gets the ordinal of the log level. + + Compares two objects @@ -17087,40 +20121,104 @@ other ordinal. - - - Gets all the availiable log levels (Trace, Debug, Info, Warn, Error, Fatal, Off). - - - - - Gets all the log levels that can be used to log events (Trace, Debug, Info, Warn, Error, Fatal) - i.e LogLevel.Off is excluded. - - - - - Gets the name of the log level. - - - - - Gets the ordinal of the log level. - - Creates and manages instances of objects. - + + + Internal for unit tests + + + - Prevents a default instance of the LogManager class from being created. + Delegate used to set/get the culture in use. + This delegate marked as obsolete before NLog 4.3.11 and it may be removed in a future release. + + + + Gets the instance used in the . + + Could be used to pass the to other methods + + + + Occurs when logging changes. + + + + + Occurs when logging gets reloaded. + + + + + Gets or sets a value indicating whether NLog should throw exceptions. + By default exceptions are not thrown under any circumstances. + + + + + Gets or sets a value indicating whether should be thrown. + + A value of true if exception should be thrown; otherwise, false. + + This option is for backwards-compatibility. + By default exceptions are not thrown under any circumstances. + + + + + + Gets or sets a value indicating whether Variables should be kept on configuration reload. + Default value - false. + + + + + Gets or sets a value indicating whether to automatically call + on AppDomain.Unload or AppDomain.ProcessExit + + + + + Gets or sets the current logging configuration. + + + + + + Begins configuration of the LogFactory options using fluent interface + + + + + Begins configuration of the LogFactory options using fluent interface + + + + + Loads logging configuration from file (Currently only XML configuration files supported) + + Configuration file to be read + LogFactory instance for fluent interface + + + + Gets or sets the global log threshold. Log events below this threshold are not logged. + + + + + Gets or sets the default culture to use. + + This property was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. - Gets the logger with the name of the current class. + Gets the logger with the full name of the current class, so namespace and class name. The logger. This is a slow-running method. @@ -17135,9 +20233,11 @@ - Gets a custom logger with the name of the current class. Use to pass the type of the needed Logger. + Gets a custom logger with the full name of the current class, so namespace and class name. + Use to create instance of a custom . + If you haven't defined your own class, then use the overload without the loggerType. - The logger class. The class must inherit from . + The logger class. This class must inherit from . The logger of type . This is a slow-running method. Make sure you're not doing this in a loop. @@ -17157,10 +20257,12 @@ - Gets the specified named custom logger. Use to pass the type of the needed Logger. + Gets the specified named custom logger. + Use to create instance of a custom . + If you haven't defined your own class, then use the overload without the loggerType. Name of the logger. - The logger class. The class must inherit from . + The logger class. This class must inherit from . The logger of type . Multiple calls to GetLogger with the same argument aren't guaranteed to return the same logger reference. The generic way for this method is @@ -17214,7 +20316,7 @@ Logging is enabled if the number of calls is greater than or equal to calls. - An object that implements IDisposable whose Dispose() method reenables logging. + An object that implements IDisposable whose Dispose() method re-enables logging. To be used with C# using () statement. @@ -17228,7 +20330,7 @@ Checks if logging is currently enabled. - if logging is currently enabled, + if logging is currently enabled, otherwise. Logging is enabled if the number of calls is greater than or equal to calls. @@ -17238,72 +20340,12 @@ Dispose all targets, and shutdown logging. - + - Gets the fully qualified name of the class invoking the LogManager, including the - namespace but not the assembly. + Generates a formatted message from the log event - - - - Gets the default instance. - - - - - Occurs when logging changes. - - - - - Occurs when logging gets reloaded. - - - - - Gets or sets a value indicating whether NLog should throw exceptions. - By default exceptions are not thrown under any circumstances. - - - - - Gets or sets a value indicating whether should be thrown. - - A value of true if exception should be thrown; otherwise, false. - - This option is for backwards-compatiblity. - By default exceptions are not thrown under any circumstances. - - - - - - Gets or sets a value indicating whether Variables should be kept on configuration reload. - Default value - false. - - - - - Gets or sets the current logging configuration. - - - - - - Gets or sets the global log threshold. Log events below this threshold are not logged. - - - - - Gets or sets the default culture to use. - - This property was marked as obsolete before NLog 4.3.11 and it may be removed in a future release. - - - - Delegate used to set/get the culture in use. - - This delegate marked as obsolete before NLog 4.3.11 and it may be removed in a future release. + Log event. + Formatted message @@ -17434,6 +20476,36 @@ Client of + + + Occurs when the log message processing has completed. + + + + + Occurs when Open operation has completed. + + + + + Occurs when Close operation has completed. + + + + + Enables the user to configure client and service credentials as well as service credential authentication settings for use on the client side of communication. + + + + + Gets the underlying implementation. + + + + + Gets the target endpoint for the service to which the WCF client can connect. + + Opens the client asynchronously. @@ -17491,36 +20563,6 @@ Instructs the inner channel to display a user interface if one is required to initialize the channel prior to using it. - - - Occurs when the log message processing has completed. - - - - - Occurs when Open operation has completed. - - - - - Occurs when Close operation has completed. - - - - - Enables the user to configure client and service credentials as well as service credential authentication settings for use on the client side of communication. - - - - - Gets the underlying implementation. - - - - - Gets the target endpoint for the service to which the WCF client can connect. - - Gets or sets the cookie container. @@ -17529,7 +20571,7 @@ - Implementation of which forwards received logs through or a given . + Implementation of which forwards received logs through or a given . @@ -17545,7 +20587,7 @@ - Implementation of which forwards received logs through or a given . + Implementation of which forwards received logs through or a given . @@ -17574,14 +20616,6 @@ Initializes a new instance of the class. - - - Converts the to . - - The object this is part of.. - The logger name prefix to prepend in front of the logger name. - Converted . - Gets or sets the client-generated identifier of the event. @@ -17618,28 +20652,19 @@ Gets the collection of indexes into array for each layout value. + + + Converts the to . + + The object this is part of.. + The logger name prefix to prepend in front of the logger name. + Converted . + Wire format for NLog event package. - - - Converts the events to sequence of objects suitable for routing through NLog. - - The logger name prefix to prepend in front of each logger name. - - Sequence of objects. - - - - - Converts the events to sequence of objects suitable for routing through NLog. - - - Sequence of objects. - - Gets or sets the name of the client. @@ -17670,6 +20695,23 @@ The events. + + + Converts the events to sequence of objects suitable for routing through NLog. + + The logger name prefix to prepend in front of each logger name. + + Sequence of objects. + + + + + Converts the events to sequence of objects suitable for routing through NLog. + + + Sequence of objects. + + List of strings annotated for more terse serialization. @@ -17691,119 +20733,6 @@ ILogReceiverClient is removed. - - - Abstract base class for the WcfLogReceiverXXXWay classes. It can only be - used internally (see internal constructor). It passes off any Channel usage - to the inheriting class. - - Type of the WCF service. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - Name of the endpoint configuration. - - - - Initializes a new instance of the class. - - Name of the endpoint configuration. - The remote address. - - - - Initializes a new instance of the class. - - Name of the endpoint configuration. - The remote address. - - - - Initializes a new instance of the class. - - The binding. - The remote address. - - - - Opens the client asynchronously. - - - - - Opens the client asynchronously. - - User-specific state. - - - - Closes the client asynchronously. - - - - - Closes the client asynchronously. - - User-specific state. - - - - Processes the log messages asynchronously. - - The events to send. - - - - Processes the log messages asynchronously. - - The events to send. - User-specific state. - - - - Begins processing of log messages. - - The events to send. - The callback. - Asynchronous state. - - IAsyncResult value which can be passed to . - - - - - Ends asynchronous processing of log messages. - - The result. - - - - Occurs when the log message processing has completed. - - - - - Occurs when Open operation has completed. - - - - - Occurs when Close operation has completed. - - - - - Gets or sets the cookie container. - - The cookie container. - Initializes a new instance of the class. @@ -17866,6 +20795,16 @@ + + + The client getting proxied + + + + + Do we use one-way or two-way messaging? + + Initializes a new instance of the class. @@ -17955,6 +20894,11 @@ IAsyncResult value which can be passed to . + + + Enables the user to configure client and service credentials as well as service credential authentication settings for use on the client side of communication. + + Causes a communication object to transition from its current state into the closed state. @@ -17978,11 +20922,32 @@ Closes the client asynchronously. + + + Occurs when Close operation has completed. + + + + + Occurs when the communication object completes its transition from the closing state into the closed state. + + + + + Occurs when the communication object first enters the closing state. + + Instructs the inner channel to display a user interface if one is required to initialize the channel prior to using it. + + + Gets or sets the cookie container. + + The cookie container. + Completes an asynchronous operation to close a communication object. @@ -17995,12 +20960,27 @@ The that is returned by a call to the method.The was unable to be opened and has entered the state.The timeout elapsed before the was able to enter the state and has entered the state. + + + Gets the target endpoint for the service to which the WCF client can connect. + + Ends asynchronous processing of log messages. The result. + + + Occurs when the communication object first enters the faulted state. + + + + + Gets the underlying implementation. + + Causes a communication object to transition from the created state into the opened state. @@ -18024,75 +21004,6 @@ User-specific state. - - - Processes the log messages asynchronously. - - The events to send. - - - - Processes the log messages asynchronously. - - The events to send. - User-specific state. - - - - Causes a communication object to transition from its current state into the closed state. - - - - - The client getting proxied - - - - - Do we use one-way or two-way messaging? - - - - - Enables the user to configure client and service credentials as well as service credential authentication settings for use on the client side of communication. - - - - - Occurs when Close operation has completed. - - - - - Occurs when the communication object completes its transition from the closing state into the closed state. - - - - - Occurs when the communication object first enters the closing state. - - - - - Gets or sets the cookie container. - - The cookie container. - - - - Gets the target endpoint for the service to which the WCF client can connect. - - - - - Occurs when the communication object first enters the faulted state. - - - - - Gets the underlying implementation. - - Occurs when Open operation has completed. @@ -18108,6 +21019,19 @@ Occurs when the communication object first enters the opening state. + + + Processes the log messages asynchronously. + + The events to send. + + + + Processes the log messages asynchronously. + + The events to send. + User-specific state. + Occurs when the log message processing has completed. @@ -18121,6 +21045,124 @@ The value of the of the object. + + + Causes a communication object to transition from its current state into the closed state. + + + + + Abstract base class for the WcfLogReceiverXXXWay classes. It can only be + used internally (see internal constructor). It passes off any Channel usage + to the inheriting class. + + Type of the WCF service. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + Name of the endpoint configuration. + + + + Initializes a new instance of the class. + + Name of the endpoint configuration. + The remote address. + + + + Initializes a new instance of the class. + + Name of the endpoint configuration. + The remote address. + + + + Initializes a new instance of the class. + + The binding. + The remote address. + + + + Occurs when the log message processing has completed. + + + + + Occurs when Open operation has completed. + + + + + Occurs when Close operation has completed. + + + + + Gets or sets the cookie container. + + The cookie container. + + + + Opens the client asynchronously. + + + + + Opens the client asynchronously. + + User-specific state. + + + + Closes the client asynchronously. + + + + + Closes the client asynchronously. + + User-specific state. + + + + Processes the log messages asynchronously. + + The events to send. + + + + Processes the log messages asynchronously. + + The events to send. + User-specific state. + + + + Begins processing of log messages. + + The events to send. + The callback. + Asynchronous state. + + IAsyncResult value which can be passed to . + + + + + Ends asynchronous processing of log messages. + + The result. + Log Receiver Client using WCF. @@ -18233,7 +21275,6 @@ Mapped Diagnostics Context - a thread-local structure that keeps a dictionary of strings and provides methods to output them in layouts. - Mostly for compatibility with log4net. @@ -18243,6 +21284,22 @@ Must be true for any subsequent dictionary modification operation + + + Sets the current thread MDC item to the specified value. + + Item name. + Item value. + An that can be used to remove the item from the current thread MDC. + + + + Sets the current thread MDC item to the specified value. + + Item name. + Item value. + >An that can be used to remove the item from the current thread MDC. + Sets the current thread MDC item to the specified value. @@ -18316,12 +21373,13 @@ NLog library so that state can be maintained for multiple threads in asynchronous situations. - + Simulate ImmutableDictionary behavior (which is not yet part of all .NET frameworks). In future the real ImmutableDictionary could be used here to minimize memory usage and copying time. Must be true for any subsequent dictionary modification operation + Prepare dictionary for additional inserts @@ -18348,6 +21406,37 @@ Item name. The value of , if defined; otherwise null. + + + Sets the current logical context item to the specified value. + + Item name. + Item value. + >An that can be used to remove the item from the current logical context. + + + + Sets the current logical context item to the specified value. + + Item name. + Item value. + >An that can be used to remove the item from the current logical context. + + + + Sets the current logical context item to the specified value. + + Item name. + Item value. + >An that can be used to remove the item from the current logical context. + + + + Updates the current logical context with multiple items in single operation + + . + >An that can be used to remove the item from the current logical context (null if no items). + Sets the current logical context item to the specified value. @@ -18362,6 +21451,13 @@ Item name. Item value. + + + Sets the current logical context item to the specified value. + + Item name. + Item value. + Returns all item names @@ -18394,7 +21490,7 @@ - Mapped Diagnostics Context - used for log4net compatibility. + Mapped Diagnostics Context This class marked as obsolete before NLog 2.0 and it may be removed in a future release. @@ -18438,12 +21534,450 @@ Clears the content of current thread MDC. + + + Mark a parameter of a method for message templating + + + + + Specifies which parameter of an annotated method should be treated as message-template-string + + + + + The name of the parameter that should be as treated as message-template-string + + + + + The type of the captured hole + + + + + Not decided + + + + + normal {x} + + + + + Serialize operator {@x} (aka destructure) + + + + + stringification operator {$x} + + + + + A hole that will be replaced with a value + + + + + Constructor + + + + Parameter name sent to structured loggers. + This is everything between "{" and the first of ",:}". + Including surrounding spaces and names that are numbers. + + + Format to render the parameter. + This is everything between ":" and the first unescaped "}" + + + + Type + + + + When the template is positional, this is the parsed name of this parameter. + For named templates, the value of Index is undefined. + + + Alignment to render the parameter, by default 0. + This is the parsed value between "," and the first of ":}" + + + + A fixed value + + + + Number of characters from the original template to copy at the current position. + This can be 0 when the template starts with a hole or when there are multiple consecutive holes. + + + Number of characters to skip in the original template at the current position. + 0 is a special value that mean: 1 escaped char, no hole. It can also happen last when the template ends with a literal. + + + + Combines Literal and Hole + + + + Literal + + + Hole + Uninitialized when = 0. + + + + Description of a single parameter extracted from a MessageTemplate + + + + + Parameter Name extracted from + This is everything between "{" and the first of ",:}". + + + + + Parameter Value extracted from the -array + + + + + Format to render the parameter. + This is everything between ":" and the first unescaped "}" + + + + + Parameter method that should be used to render the parameter + See also + + + + + Returns index for , when + + + + + Constructs a single message template parameter + + Parameter Name + Parameter Value + Parameter Format + + + + Constructs a single message template parameter + + Parameter Name + Parameter Value + Parameter Format + Parameter CaptureType + + + + Parameters extracted from parsing as MessageTemplate + + + + + + + + + + + Gets the parameters at the given index + + + + + Number of parameters + + + + Indicates whether the template should be interpreted as positional + (all holes are numbers) or named. + + + + Indicates whether the template was parsed successful, and there are no unmatched parameters + + + + + Constructor for parsing the message template with parameters + + including any parameter placeholders + All + + + + Constructor for named parameters that already has been parsed + + + + + Create MessageTemplateParameter from + + + + + A message template + + + + The original template string. + This is the key passed to structured targets. + + + The list of literal parts, useful for string rendering. + It indicates the number of characters from the original string to print, + then there's a hole with how many chars to skip. + + "Hello {firstName} {lastName}!" + ------------------------------------- + ║P |S ║P|S ║P|S║ + ║6 |11 ║1|10 ║1|0║ + ║Hello |{firstName}║ |{lastName}║!║ + + "{x} * 2 = {2x}" + -------------------- + ║P|S ║P |S ║ + ║0|3 ║7 |4 ║ + ║{x}║ * 2 = |{2x}║ + + The tricky part is escaped braces. They are represented by a skip = 0, + which is interpreted as "move one char forward, no hole". + + "Escaped }} is fun." + ---------------------- + ║P |S║P |S║ + ║9 |0║8 |0║ + ║Escaped }|}║ is fun.|║ + + + + This list of holes. It's used both to fill the string rendering + and to send values along the template to structured targets. + + + Indicates whether the template should be interpreted as positional + (all holes are numbers) or named. + + + + Create a template, which is already parsed + + + + + + + + + Create a template, which is already parsed + + + + + + + + This is for testing only: recreates from the parsed data. + + + + This is for testing only: rebuilds the hole + + Add to this string builder + ref for performance + + + + Parse templates. + + + + + Parse a template. + + Template to be parsed. + When is null. + Template, never null + + + + Gets the current literal/hole in the template + + + + + Clears the enumerator + + + + + Restarts the enumerator of the template + + + + + Moves to the next literal/hole in the template + + Found new element [true/false] + + + + Parse format after hole name/index. Handle the escaped { and } in the format. Don't read the last } + + + + + + Parse templates. + + + + + Parse a template. + + Template to be parsed. + When is null. + Template, never null + + + + Error when parsing a template. + + + + + Current index when the error occurred. + + + + + The template we were parsing + + + + + New exception + + The message to be shown. + Current index when the error occurred. + + + + + Render templates + + + + + Render a template to a string. + + The template. + Culture. + Parameters for the holes. + Do not fallback to StringBuilder.Format for positional templates. + The String Builder destination. + Parameters for the holes. + + + + Render a template to a string. + + The template. + The String Builder destination. + Culture. + Parameters for the holes. + Rendered template, never null. + + + + Convert Render or serialize a value, with optionally backwards-compatible with + + + + Singleton + + + + Serialization of an object, e.g. JSON and append to + + The object to serialize to string. + Parameter Format + Parameter CaptureType + An object that supplies culture-specific formatting information. + Output destination. + Serialize succeeded (true/false) + + + + Format an object to a readable string, or if it's an object, serialize + + The value to convert + + + + + + + + Try serializing a scalar (string, int, NULL) or simple type (IFormattable) + + + + + Serialize Dictionary as JSON like structure, without { and } + + + "FirstOrder"=true, "Previous login"=20-12-2017 14:55:32, "number of tries"=1 + + + formatstring of an item + + + + + + + + + Convert a value to a string with format and append to . + + The value to convert. + Format sting for the value. + Format provider for the value. + Append to this + - Nested Diagnostics Context - for log4net compatibility. + Nested Diagnostics Context This class marked as obsolete on NLog 2.0 and it may be removed in a future release. + + + Gets the top NDC message but doesn't remove it. + + The top message. . + + + + Gets the top NDC object but doesn't remove it. + + The object from the top of the NDC stack, if defined; otherwise null. + Pushes the specified text on current thread NDC. @@ -18480,24 +22014,23 @@ Array of objects on the stack. - + + + Nested Diagnostics Context - a thread-local structure that keeps a stack + of strings and provides methods to output them in layouts + + + Gets the top NDC message but doesn't remove it. The top message. . - + Gets the top NDC object but doesn't remove it. - The object from the top of the NDC stack, if defined; otherwise null. - - - - Nested Diagnostics Context - a thread-local structure that keeps a stack - of strings and provides methods to output them in layouts - Mostly for compatibility with log4net. - + The object at the top of the NDC stack if defined; otherwise null. @@ -18532,6 +22065,12 @@ The object from the top of the NDC stack, if defined; otherwise null. + + + Peeks the first object on the NDC stack + + The object from the top of the NDC stack, if defined; otherwise null. + Clears current thread NDC stack. @@ -18556,18 +22095,6 @@ Array of objects on the stack. - - - Gets the top NDC message but doesn't remove it. - - The top message. . - - - - Gets the top NDC object but doesn't remove it. - - The object at the top of the NDC stack if defined; otherwise null. - Resets the stack to the original count during . @@ -18575,7 +22102,7 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The stack. The previous count. @@ -18587,7 +22114,7 @@ - Async version of - a logical context structure that keeps a stack + Async version of - a logical context structure that keeps a stack Allows for maintaining scope across asynchronous tasks and call contexts. @@ -18598,17 +22125,69 @@ The value to be pushed. An instance of the object that implements IDisposable that returns the stack to the previous level when IDisposable.Dispose() is called. To be used with C# using() statement. + + + Pushes the specified value on current stack + + The value to be pushed. + An instance of the object that implements IDisposable that returns the stack to the previous level when IDisposable.Dispose() is called. To be used with C# using() statement. + - Pops the top message off the current stack + Pops the top message off the NDLC stack. The top message which is no longer on the stack. + this methods returns a object instead of string, this because of backwards-compatibility + + + + Pops the top message from the NDLC stack. + + The to use when converting the value to a string. + The top message, which is removed from the stack, as a string value. + + + + Pops the top message off the current NDLC stack + + The object from the top of the NDLC stack, if defined; otherwise null. + + + + Peeks the top object on the current NDLC stack + + The object from the top of the NDLC stack, if defined; otherwise null. + + + + Peeks the current scope, and returns its start time + + Scope Creation Time + + + + Peeks the first scope, and returns its start time + + Scope Creation Time Clears current stack. + + + Gets all messages on the stack. + + Array of strings on the stack. + + + + Gets all messages from the stack, without removing them. + + The to use when converting a value to a string. + Array of strings. + Gets all objects on the stack. The objects are not removed from the stack. @@ -18622,25 +22201,25 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. The message. - Initializes a new instance of the class. + Initializes a new instance of the class. The message. Parameters for the message - Initializes a new instance of the class. + Initializes a new instance of the class. The inner exception. The message. @@ -18648,14 +22227,14 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The message. The inner exception. - Initializes a new instance of the class. + Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. @@ -18673,32 +22252,32 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. The message. - Initializes a new instance of the class. + Initializes a new instance of the class. The message. Parameters for the message - Initializes a new instance of the class. + Initializes a new instance of the class. The message. The inner exception. - Initializes a new instance of the class. + Initializes a new instance of the class. The that holds the serialized object data about the exception being thrown. The that contains contextual information about the source or destination. @@ -18719,6 +22298,38 @@ Initializes a new instance of the class. + + + Gets or sets the log factory to use when outputting messages (null - use LogManager). + + + + + Gets or sets the default log level. + + + + + Gets or sets the log which should be always used regardless of source level. + + + + + Gets or sets a value indicating whether flush calls from trace sources should be ignored. + + + + + Gets a value indicating whether the trace listener is thread safe. + + + true if the trace listener is thread safe; otherwise, false. The default is false. + + + + Gets or sets a value indicating whether to use auto logger name detected from the stack trace. + + When overridden in a derived class, writes the specified message to the listener you create in the derived class. @@ -18841,38 +22452,6 @@ The related activity id. - - - Gets or sets the log factory to use when outputting messages (null - use LogManager). - - - - - Gets or sets the default log level. - - - - - Gets or sets the log which should be always used regardless of source level. - - - - - Gets or sets a value indicating whether flush calls from trace sources should be ignored. - - - - - Gets a value indicating whether the trace listener is thread safe. - - - true if the trace listener is thread safe; otherwise, false. The default is false. - - - - Gets or sets a value indicating whether to use auto logger name detected from the stack trace. - - It works as a normal but it discards all messages which an application requests @@ -18887,6 +22466,216 @@ The factory class to be used for the creation of this logger. + + + Extension methods to setup LogFactory options + + + + + Gets the logger with the full name of the current class, so namespace and class name. + + + + + Gets the specified named logger. + + + + + Configures loading of NLog extensions for Targets and LayoutRenderers + + + + + Configures the output of NLog for diagnostics / troubleshooting + + + + + Configures serialization and transformation of LogEvents + + + + + Loads NLog config created by the method + + + + + Loads NLog config provided in + + + + + Loads NLog config from filename if provided, else fallback to scanning for NLog.config + + + + + Loads NLog config from XML in + + + + + Extension methods to setup NLog extensions, so they are known when loading NLog LoggingConfiguration + + + + + Enable/disables autoloading of NLog extensions by scanning and loading available assemblies + + + Enabled by default, and gives a huge performance hit during startup. Recommended to disable this when running in the cloud. + + + + + Registers NLog extensions from the assembly. + + + + + Registers NLog extensions from the assembly type name + + + + + Register a custom Target. + + Fluent interface parameter. + Type of the Target. + Name of the Target. + + + + Register a custom Target. + + Fluent interface parameter. + Type of the Target. + Name of the Target. + + + + Register a custom layout renderer. + + Fluent interface parameter. + Type of the layout renderer. + Name of the layout renderer - without ${}. + + + + Register a custom layout renderer. + + Fluent interface parameter. + Type of the layout renderer. + Name of the layout renderer - without ${}. + + + + Register a custom layout renderer with a callback function . The callback receives the logEvent. + + Fluent interface parameter. + Name of the layout renderer - without ${}. + Callback that returns the value for the layout renderer. + + + + Register a custom layout renderer with a callback function . The callback receives the logEvent and the current configuration. + + Fluent interface parameter. + Name of the layout renderer - without ${}. + Callback that returns the value for the layout renderer. + + + + Register a custom condition method, that can use in condition filters + + Fluent interface parameter. + Name of the condition filter method + MethodInfo extracted by reflection - typeof(MyClass).GetMethod("MyFunc", BindingFlags.Static). + + + + Register a custom condition method, that can use in condition filters + + Fluent interface parameter. + Name of the condition filter method + Lambda method. + + + + Register a custom condition method, that can use in condition filters + + Fluent interface parameter. + Name of the condition filter method + Lambda method. + + + + Extension methods to setup NLog options + + + + + Configures + + + + + Configures + + + + + Configures + + + + + Configures + + + + + Configures + + + + + Configures + + + + + Configures + + + + + Extension methods to setup NLog extensions, so they are known when loading NLog LoggingConfiguration + + + + + Overrides the active with a new custom implementation + + + + + Overrides the active with a new custom implementation + + + + + Registers object Type transformation from dangerous (massive) object to safe (reduced) object + + + + + Registers object Type transformation from dangerous (massive) object to safe (reduced) object + + Specifies the way archive numbering is performed. @@ -18920,14 +22709,4337 @@ Abstract Target with async Task support + + + How many milliseconds to delay the actual write operation to optimize for batching + + + + + How many seconds a Task is allowed to run before it is cancelled. + + + + + How many attempts to retry the same Task, before it is aborted + + + + + How many milliseconds to wait before next retry (will double with each retry) + + + + + Gets or sets whether to use the locking queue, instead of a lock-free concurrent queue + The locking queue is less concurrent when many logger threads, but reduces memory allocation + + + + + Gets or sets the action to be taken when the lazy writer thread request queue count + exceeds the set limit. + + + + + + Gets or sets the limit on the number of requests in the lazy writer thread request queue. + + + + + + Gets or sets the number of log events that should be processed in a batch + by the lazy writer thread. + + + + + + Task Scheduler used for processing async Tasks + + + + + Constructor + + + + + Initializes the internal queue for pending logevents + + + + + Override this to create the actual logging task + + Example of how to override this method, and call custom async method + + protected override Task WriteAsyncTask(LogEventInfo logEvent, CancellationToken token) + { + return CustomWriteAsync(logEvent, token); + } + + private async Task CustomWriteAsync(LogEventInfo logEvent, CancellationToken token) + { + await MyLogMethodAsync(logEvent, token).ConfigureAwait(false); + } + + + The log event. + The cancellation token + + + + + Override this to create the actual logging task for handling batch of logevents + + A batch of logevents. + The cancellation token + + + + + Handle cleanup after failed write operation + + Exception from previous failed Task + The cancellation token + Number of retries remaining + Time to sleep before retrying + Should attempt retry + + + + Schedules the LogEventInfo for async writing + + The log event. + + + + Write to queue without locking + + + + + + Schedules notification of when all messages has been written + + + + + + Closes Target by updating CancellationToken + + + + + Releases any managed resources + + + + + + Checks the internal queue for the next to create a new task for + + Used for race-condition validation between task-completion and timeout + Signals whether previousTask completed an almost full BatchSize + + + + Generates recursive task-chain to perform retry of writing logevents with increasing retry-delay + + + + + Creates new task to handle the writing of the input + + LogEvents to write + New Task created [true / false] + + + + Handles that scheduled task has completed (successfully or failed), and starts the next pending task + + Task just completed + AsyncContinuation to notify of success or failure + + + + Timer method, that is fired when pending task fails to complete within timeout + + + + + + Sends log messages to the remote instance of Chainsaw application from log4j. + + Documentation on NLog Wiki + +

+ To set up the target in the configuration file, + use the following syntax: +

+ +

+ This assumes just one target and a single rule. More configuration + options are described here. +

+

+ To set up the log target programmatically use code like this: +

+ +

+ NOTE: If your receiver application is ever likely to be off-line, don't use TCP protocol + or you'll get TCP timeouts and your application will crawl. + Either switch to UDP transport or use AsyncWrapper target + so that your application threads will not be blocked by the timing-out connection attempts. +

+
+
+ + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a name. + + Name of the target. + + + + Color formatting for using ANSI Color Codes + + + + + Not using bold to get light colors, as it has to be cleared + + + + + Not using bold to get light colors, as it has to be cleared (And because it only works for text, and not background) + + + + + Resets both foreground and background color. + + + + + ANSI have 8 color-codes (30-37) by default. The "bright" (or "intense") color-codes (90-97) are extended values not supported by all terminals + + + + + Color formatting for using + and + + + + + Writes log messages to the console with customizable coloring. + + Documentation on NLog Wiki + + + + Should logging being paused/stopped because of the race condition bug in Console.Writeline? + + + Console.Out.Writeline / Console.Error.Writeline could throw 'IndexOutOfRangeException', which is a bug. + See https://stackoverflow.com/questions/33915790/console-out-and-console-error-race-condition-error-in-a-windows-service-written + and https://connect.microsoft.com/VisualStudio/feedback/details/2057284/console-out-probable-i-o-race-condition-issue-in-multi-threaded-windows-service + + Full error: + Error during session close: System.IndexOutOfRangeException: Probable I/ O race condition detected while copying memory. + The I/ O package is not thread safe by default.In multithreaded applications, + a stream must be accessed in a thread-safe way, such as a thread - safe wrapper returned by TextReader's or + TextWriter's Synchronized methods.This also applies to classes like StreamWriter and StreamReader. + + + + + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + + + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + Name of the target. + + + + Gets or sets a value indicating whether the error stream (stderr) should be used instead of the output stream (stdout). + + + + + + Gets or sets a value indicating whether to use default row highlighting rules. + + + The default rules are: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ConditionForeground ColorBackground Color
level == LogLevel.FatalRedNoChange
level == LogLevel.ErrorYellowNoChange
level == LogLevel.WarnMagentaNoChange
level == LogLevel.InfoWhiteNoChange
level == LogLevel.DebugGrayNoChange
level == LogLevel.TraceDarkGrayNoChange
+
+ +
+ + + The encoding for writing messages to the . + + Has side effect + + + + + Gets or sets a value indicating whether to auto-check if the console is available. + - Disables console writing if Environment.UserInteractive = False (Windows Service) + - Disables console writing if Console Standard Input is not available (Non-Console-App) + + + + + + Gets or sets a value indicating whether to auto-check if the console has been redirected to file + - Disables coloring logic when System.Console.IsOutputRedirected = true + + + + + + Gets or sets a value indicating whether to auto-flush after + + + Normally not required as standard Console.Out will have = true, but not when pipe to file + + + + + + Enables output using ANSI Color Codes + + + + + + Gets the row highlighting rules. + + + + + + Gets the word highlighting rules. + + + + + + Initializes the target. + + + + + Closes the target and releases any unmanaged resources. + + + + + + + + Writes the specified log event to the console highlighting entries + and words based on a set of defined rules. + + Log event. + + + + Colored console output color. + + + Note that this enumeration is defined to be binary compatible with + .NET 2.0 System.ConsoleColor + some additions + + + + + Black Color (#000000). + + + + + Dark blue Color (#000080). + + + + + Dark green Color (#008000). + + + + + Dark Cyan Color (#008080). + + + + + Dark Red Color (#800000). + + + + + Dark Magenta Color (#800080). + + + + + Dark Yellow Color (#808000). + + + + + Gray Color (#C0C0C0). + + + + + Dark Gray Color (#808080). + + + + + Blue Color (#0000FF). + + + + + Green Color (#00FF00). + + + + + Cyan Color (#00FFFF). + + + + + Red Color (#FF0000). + + + + + Magenta Color (#FF00FF). + + + + + Yellow Color (#FFFF00). + + + + + White Color (#FFFFFF). + + + + + Don't change the color. + + + + + The row-highlighting condition. + + + + + Initializes static members of the ConsoleRowHighlightingRule class. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The condition. + Color of the foreground. + Color of the background. + + + + Gets the default highlighting rule. Doesn't change the color. + + + + + Gets or sets the condition that must be met in order to set the specified foreground and background color. + + + + + + Gets or sets the foreground color. + + + + + + Gets or sets the background color. + + + + + + Checks whether the specified log event matches the condition (if any). + + + Log event. + + + A value of if the condition is not defined or + if it matches, otherwise. + + + + + Writes log messages to the console. + + Documentation on NLog Wiki + +

+ To set up the target in the configuration file, + use the following syntax: +

+ +

+ This assumes just one target and a single rule. More configuration + options are described here. +

+

+ To set up the log target programmatically use code like this: +

+ +
+
+ + + Should logging being paused/stopped because of the race condition bug in Console.Writeline? + + + Console.Out.Writeline / Console.Error.Writeline could throw 'IndexOutOfRangeException', which is a bug. + See https://stackoverflow.com/questions/33915790/console-out-and-console-error-race-condition-error-in-a-windows-service-written + and https://connect.microsoft.com/VisualStudio/feedback/details/2057284/console-out-probable-i-o-race-condition-issue-in-multi-threaded-windows-service + + Full error: + Error during session close: System.IndexOutOfRangeException: Probable I/ O race condition detected while copying memory. + The I/ O package is not thread safe by default. In multi threaded applications, + a stream must be accessed in a thread-safe way, such as a thread - safe wrapper returned by TextReader's or + TextWriter's Synchronized methods.This also applies to classes like StreamWriter and StreamReader. + + + + + + Gets or sets a value indicating whether to send the log messages to the standard error instead of the standard output. + + + + + + The encoding for writing messages to the . + + Has side effect + + + + + Gets or sets a value indicating whether to auto-check if the console is available + - Disables console writing if Environment.UserInteractive = False (Windows Service) + - Disables console writing if Console Standard Input is not available (Non-Console-App) + + + + + + Gets or sets a value indicating whether to auto-flush after + + + Normally not required as standard Console.Out will have = true, but not when pipe to file + + + + + + Gets or sets whether to enable batch writing using char[]-buffers, instead of using + + + + + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + + + + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + Name of the target. + + + + Initializes the target. + + + + + Closes the target and releases any unmanaged resources. + + + + + + + + Writes the specified logging event to the Console.Out or + Console.Error depending on the value of the Error flag. + + The logging event. + + Note that the Error option is not supported on .NET Compact Framework. + + + + + + + + Write to output + + + + + Highlighting rule for Win32 colorful console. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The text to be matched.. + Color of the foreground. + Color of the background. + + + + Gets or sets the regular expression to be matched. You must specify either text or regex. + + + + + + Gets or sets the condition that must be met before scanning the row for highlight of words + + + + + + Compile the ? This can improve the performance, but at the costs of more memory usage. If false, the Regex Cache is used. + + + + + + Gets or sets the text to be matched. You must specify either text or regex. + + + + + + Gets or sets a value indicating whether to match whole words only. + + + + + + Gets or sets a value indicating whether to ignore case when comparing texts. + + + + + + Gets or sets the foreground color. + + + + + + Gets or sets the background color. + + + + + + Gets the compiled regular expression that matches either Text or Regex property. Only used when is true. + + + + + Information about database command + parameters. + + + + + Initializes a new instance of the class. + + + + + Gets or sets the type of the command. + + The type of the command. + + + + + Gets or sets the connection string to run the command against. If not provided, connection string from the target is used. + + + + + + Gets or sets the command text. + + + + + + Gets or sets a value indicating whether to ignore failures. + + + + + + Gets the collection of parameters. Each parameter contains a mapping + between NLog layout and a database named or positional parameter. + + + + + + Information about object-property for the database-connection-object + + + + + Initializes a new instance of the class. + + + + + Gets or sets the name for the object-property + + + + + + Gets or sets the value to assign on the object-property + + + + + + Gets or sets the type of the object-property + + + + + + Gets or sets convert format of the property value + + + + + + Gets or sets the culture used for parsing property string-value for type-conversion + + + + + + Represents a parameter to a Database target. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + Name of the parameter. + The parameter layout. + + + + Gets or sets the database parameter name. + + + + + + Gets or sets the layout that should be use to calculate the value for the parameter. + + + + + + Gets or sets the database parameter DbType. + + + + + + Gets or sets the database parameter size. + + + + + + Gets or sets the database parameter precision. + + + + + + Gets or sets the database parameter scale. + + + + + + Gets or sets the type of the parameter. + + + + + + Gets or sets convert format of the database parameter value. + + + + + + Gets or sets the culture used for parsing parameter string-value for type-conversion + + + + + + Gets or sets whether empty value should translate into DbNull. Requires database column to allow NULL values. + + + + + + Writes log messages to the database using an ADO.NET provider. + + + - NETSTANDARD cannot load connectionstrings from .config + + Documentation on NLog Wiki + + + The configuration is dependent on the database type, because + there are different methods of specifying connection string, SQL + command and command parameters. + + MS SQL Server using System.Data.SqlClient: + + Oracle using System.Data.OracleClient: + + Oracle using System.Data.OleDBClient: + + To set up the log target programmatically use code like this (an equivalent of MSSQL configuration): + + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + Name of the target. + + + + Gets or sets the name of the database provider. + + + + The parameter name should be a provider invariant name as registered in machine.config or app.config. Common values are: + +
    +
  • System.Data.SqlClient - SQL Sever Client
  • +
  • System.Data.SqlServerCe.3.5 - SQL Sever Compact 3.5
  • +
  • System.Data.OracleClient - Oracle Client from Microsoft (deprecated in .NET Framework 4)
  • +
  • Oracle.DataAccess.Client - ODP.NET provider from Oracle
  • +
  • System.Data.SQLite - System.Data.SQLite driver for SQLite
  • +
  • Npgsql - Npgsql driver for PostgreSQL
  • +
  • MySql.Data.MySqlClient - MySQL Connector/Net
  • +
+ (Note that provider invariant names are not supported on .NET Compact Framework). + + Alternatively the parameter value can be be a fully qualified name of the provider + connection type (class implementing ) or one of the following tokens: + +
    +
  • sqlserver, mssql, microsoft or msde - SQL Server Data Provider
  • +
  • oledb - OLEDB Data Provider
  • +
  • odbc - ODBC Data Provider
  • +
+
+ +
+ + + Gets or sets the name of the connection string (as specified in <connectionStrings> configuration section. + + + + + + Gets or sets the connection string. When provided, it overrides the values + specified in DBHost, DBUserName, DBPassword, DBDatabase. + + + + + + Gets or sets the connection string using for installation and uninstallation. If not provided, regular ConnectionString is being used. + + + + + + Gets the installation DDL commands. + + + + + + Gets the uninstallation DDL commands. + + + + + + Gets or sets a value indicating whether to keep the + database connection open between the log events. + + + + + + Obsolete - value will be ignored! The logging code always runs outside of transaction. + + Gets or sets a value indicating whether to use database transactions. + Some data providers require this. + + + + This option was removed in NLog 4.0 because the logging code always runs outside of transaction. + This ensures that the log gets written to the database if you rollback the main transaction because of an error and want to log the error. + + + + + Gets or sets the database host name. If the ConnectionString is not provided + this value will be used to construct the "Server=" part of the + connection string. + + + + + + Gets or sets the database user name. If the ConnectionString is not provided + this value will be used to construct the "User ID=" part of the + connection string. + + + + + + Gets or sets the database password. If the ConnectionString is not provided + this value will be used to construct the "Password=" part of the + connection string. + + + + + + Gets or sets the database name. If the ConnectionString is not provided + this value will be used to construct the "Database=" part of the + connection string. + + + + + + Gets or sets the text of the SQL command to be run on each log level. + + + Typically this is a SQL INSERT statement or a stored procedure call. + It should use the database-specific parameters (marked as @parameter + for SQL server or :parameter for Oracle, other data providers + have their own notation) and not the layout renderers, + because the latter is prone to SQL injection attacks. + The layout renderers should be specified as <parameter /> elements instead. + + + + + + Gets or sets the type of the SQL command to be run on each log level. + + + This specifies how the command text is interpreted, as "Text" (default) or as "StoredProcedure". + When using the value StoredProcedure, the commandText-property would + normally be the name of the stored procedure. TableDirect method is not supported in this context. + + + + + + Gets the collection of parameters. Each item contains a mapping + between NLog layout and a database named or positional parameter. + + + + + + Gets the collection of properties. Each item contains a mapping + between NLog layout and a property on the DbConnection instance + + + + + + Gets the collection of properties. Each item contains a mapping + between NLog layout and a property on the DbCommand instance + + + + + + Configures isolated transaction batch writing. If supported by the database, then it will improve insert performance. + + + + + + Performs installation which requires administrative permissions. + + The installation context. + + + + Performs uninstallation which requires administrative permissions. + + The installation context. + + + + Determines whether the item is installed. + + The installation context. + + Value indicating whether the item is installed or null if it is not possible to determine. + + + + + Initializes the target. Can be used by inheriting classes + to initialize logging. + + + + + Set the to use it for opening connections to the database. + + + + + Closes the target and releases any unmanaged resources. + + + + + Writes the specified logging event to the database. It creates + a new database command, prepares parameters for it by calculating + layouts and executes the command. + + The logging event. + + + + NOTE! Obsolete, instead override Write(IList{AsyncLogEventInfo} logEvents) + + Writes an array of logging events to the log target. By default it iterates on all + events and passes them to "Write" method. Inheriting classes can use this method to + optimize batch writes. + + Logging events to be written out. + + + + Writes an array of logging events to the log target. By default it iterates on all + events and passes them to "Write" method. Inheriting classes can use this method to + optimize batch writes. + + Logging events to be written out. + + + + Write logEvent to database + + + + + Build the connectionstring from the properties. + + + Using at first, and falls back to the properties , + , and + + Event to render the layout inside the properties. + + + + + Escape quotes and semicolons. + See https://docs.microsoft.com/en-us/previous-versions/windows/desktop/ms722656(v=vs.85)#setting-values-that-use-reserved-characters + + + + + Create database parameter + + Current command. + Parameter configuration info. + + + + Extract parameter value from the logevent + + Current logevent. + Parameter configuration info. + + + + Create Default Value of Type + + + + + A descriptor for an archive created with the DateAndSequence numbering mode. + + + + + The full name of the archive file. + + + + + The parsed date contained in the file name. + + + + + The parsed sequence number contained in the file name. + + + + + Determines whether produces the same string as the current instance's date once formatted with the current instance's date format. + + The date to compare the current object's date to. + True if the formatted dates are equal, otherwise False. + + + + Initializes a new instance of the class. + + + + + Writes log messages to the attached managed debugger. + + +

+ To set up the target in the configuration file, + use the following syntax: +

+ +

+ This assumes just one target and a single rule. More configuration + options are described here. +

+

+ To set up the log target programmatically use code like this: +

+ +
+
+ + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + + + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + Name of the target. + + + + Initializes the target. + + + + + Closes the target and releases any unmanaged resources. + + + + + Writes the specified logging event to the attached debugger. + + The logging event. + + + + Mock target - useful for testing. + + Documentation on NLog Wiki + +

+ To set up the target in the configuration file, + use the following syntax: +

+ +

+ This assumes just one target and a single rule. More configuration + options are described here. +

+

+ To set up the log target programmatically use code like this: +

+ +
+
+ + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + + + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + Name of the target. + + + + Gets the number of times this target has been called. + + + + + + Gets the last message rendered by this target. + + + + + + Increases the number of messages. + + The logging event. + + + + Default class for serialization of values to JSON format. + + + + + Singleton instance of the serializer. + + + + + Private. Use + + + + + Returns a serialization of an object into JSON format. + + The object to serialize to JSON. + Serialized value. + + + + Returns a serialization of an object into JSON format. + + The object to serialize to JSON. + serialisation options + Serialized value. + + + + Serialization of the object in JSON format to the destination StringBuilder + + The object to serialize to JSON. + Write the resulting JSON to this destination. + Object serialized successfully (true/false). + + + + Serialization of the object in JSON format to the destination StringBuilder + + The object to serialize to JSON. + Write the resulting JSON to this destination. + serialisation options + Object serialized successfully (true/false). + + + + Serialization of the object in JSON format to the destination StringBuilder + + The object to serialize to JSON. + Write the resulting JSON to this destination. + serialisation options + The objects in path (Avoid cyclic reference loop). + The current depth (level) of recursion. + Object serialized successfully (true/false). + + + + No quotes needed for this type? + + + + + Checks the object if it is numeric + + TypeCode for the object + Accept fractional types as numeric type. + + + + + Checks input string if it needs JSON escaping, and makes necessary conversion + + Destination Builder + Input string + all options + JSON escaped string + + + + Checks input string if it needs JSON escaping, and makes necessary conversion + + Destination Builder + Input string + Should non-ascii characters be encoded + + JSON escaped string + + + + Writes log message to the Event Log. + + Documentation on NLog Wiki + +

+ To set up the target in the configuration file, + use the following syntax: +

+ +

+ This assumes just one target and a single rule. More configuration + options are described here. +

+

+ To set up the log target programmatically use code like this: +

+ +
+
+ + + Max size in characters (limitation of the EventLog API). + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + Name of the target. + + + + Initializes a new instance of the class. + + . to be used as Source. + + + + Initializes a new instance of the class. + + + + + Gets or sets the name of the machine on which Event Log service is running. + + + + + + Gets or sets the layout that renders event ID. + + + + + + Gets or sets the layout that renders event Category. + + + + + + Optional entry type. When not set, or when not convertible to then determined by + + + + + + Gets or sets the value to be used as the event Source. + + + By default this is the friendly name of the current AppDomain. + + + + + + Gets or sets the name of the Event Log to write to. This can be System, Application or any user-defined name. + + + + + + Gets or sets the message length limit to write to the Event Log. + + MaxMessageLength cannot be zero or negative + + + + + Gets or sets the maximum Event log size in kilobytes. + + + MaxKilobytes cannot be less than 64 or greater than 4194240 or not a multiple of 64. + If null, the value will not be specified while creating the Event log. + + + + + + Gets or sets the action to take if the message is larger than the option. + + + + + + Performs installation which requires administrative permissions. + + The installation context. + + + + Performs uninstallation which requires administrative permissions. + + The installation context. + + + + Determines whether the item is installed. + + The installation context. + + Value indicating whether the item is installed or null if it is not possible to determine. + + + + + Initializes the target. + + + + + Writes the specified logging event to the event log. + + The logging event. + + + + Get the entry type for logging the message. + + The logging event - for rendering the + + + + Get the source, if and only if the source is fixed. + + null when not + Internal for unit tests + + + + (re-)create an event source, if it isn't there. Works only with fixed source names. + + The source name. If source is not fixed (see , then pass null or . + always throw an Exception when there is an error + + + + A wrapper for Windows event log. + + + + + A wrapper for the property . + + + + + A wrapper for the property . + + + + + A wrapper for the property . + + + + + A wrapper for the property . + + + + + Indicates whether an event log instance is associated. + + + + + A wrapper for the method . + + + + + Creates a new association with an instance of the event log. + + + + + A wrapper for the static method . + + + + + A wrapper for the static method . + + + + + A wrapper for the static method . + + + + + A wrapper for the static method . + + + + + The implementation of , that uses Windows . + + + + + + + + + + + + + + + + + + + + + + + + Creates a new association with an instance of Windows . + + + + + + + + + + + + + + + + + Action that should be taken if the message is greater than + the max message size allowed by the Event Log. + + + + + Truncate the message before writing to the Event Log. + + + + + Split the message and write multiple entries to the Event Log. + + + + + Discard of the message. It will not be written to the Event Log. + + + + + Check if cleanup should be performed on initialize new file + + Skip cleanup when initializing new file, just after having performed archive operation + + Base archive file pattern + Maximum number of archive files that should be kept + Maximum days of archive files that should be kept + True, when archive cleanup is needed + + + + Characters determining the start of the . + + + + + Characters determining the end of the . + + + + + File name which is used as template for matching and replacements. + It is expected to contain a pattern to match. + + + + + The begging position of the + within the . -1 is returned + when no pattern can be found. + + + + + The ending position of the + within the . -1 is returned + when no pattern can be found. + + + + + Replace the pattern with the specified String. + + + + + + + Archives the log-files using a date style numbering. Archives will be stamped with the + prior period (Year, Month, Day, Hour, Minute) datetime. + + When the number of archive files exceed the obsolete archives are deleted. + When the age of archive files exceed the obsolete archives are deleted. + + + + + Archives the log-files using a date and sequence style numbering. Archives will be stamped + with the prior period (Year, Month, Day) datetime. The most recent archive has the highest number (in + combination with the date). + + When the number of archive files exceed the obsolete archives are deleted. + When the age of archive files exceed the obsolete archives are deleted. + + + + + Parse filename with date and sequence pattern + + + dateformat for archive + + the found pattern. When failed, then default + the found pattern. When failed, then default + + + + + Archives the log-files using the provided base-archive-filename. If the base-archive-filename causes + duplicate archive filenames, then sequence-style is automatically enforced. + + Example: + Base Filename trace.log + Next Filename trace.0.log + + The most recent archive has the highest number. + + When the number of archive files exceed the obsolete archives are deleted. + When the age of archive files exceed the obsolete archives are deleted. + + + + + Dynamically converts a non-template archiveFilePath into a correct archiveFilePattern. + Before called the original IFileArchiveMode, that has been wrapped by this + + + + + Determines if the file name as contains a numeric pattern i.e. {#} in it. + + Example: + trace{#}.log Contains the numeric pattern. + trace{###}.log Contains the numeric pattern. + trace{#X#}.log Contains the numeric pattern (See remarks). + trace.log Does not contain the pattern. + + Occasionally, this method can identify the existence of the {#} pattern incorrectly. + File name to be checked. + when the pattern is found; otherwise. + + + + Archives the log-files using a rolling style numbering (the most recent is always #0 then + #1, ..., #N. + + When the number of archive files exceed the obsolete archives + are deleted. + + + + + Replaces the numeric pattern i.e. {#} in a file name with the parameter value. + + File name which contains the numeric pattern. + Value which will replace the numeric pattern. + File name with the value of in the position of the numeric pattern. + + + + Archives the log-files using a sequence style numbering. The most recent archive has the highest number. + + When the number of archive files exceed the obsolete archives are deleted. + When the age of archive files exceed the obsolete archives are deleted. + + + + + Modes of archiving files based on time. + + + + + Don't archive based on time. + + + + + AddToArchive every year. + + + + + AddToArchive every month. + + + + + AddToArchive daily. + + + + + AddToArchive every hour. + + + + + AddToArchive every minute. + + + + + AddToArchive every Sunday. + + + + + AddToArchive every Monday. + + + + + AddToArchive every Tuesday. + + + + + AddToArchive every Wednesday. + + + + + AddToArchive every Thursday. + + + + + AddToArchive every Friday. + + + + + AddToArchive every Saturday. + + + + + Type of filepath + + + + + Detect of relative or absolute + + + + + Relative path + + + + + Absolute path + + Best for performance + + + + Writes log messages to one or more files. + + Documentation on NLog Wiki + + + + Default clean up period of the initialized files. When a file exceeds the clean up period is removed from the list. + + Clean up period is defined in days. + + + + The maximum number of initialized files before clean up procedures are initiated, + to keep the number of initialized files to a minimum. Chose 25 to cater for monthly rolling of log-files. + + + + + This value disables file archiving based on the size. + + + + + Holds the initialized files each given time by the instance. Against each file, the last write time is stored. + + Last write time is store in local time (no UTC). + + + + List of the associated file appenders with the instance. + + + + + The number of initialized files at any one time. + + + + + The maximum number of archive files that should be kept. + + + + + The maximum days of archive files that should be kept. + + + + + The filename as target + + + + + The archive file name as target + + + + + The date of the previous log event. + + + + + The file name of the previous log event. + + + + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + + + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + Name of the target. + + + + Gets or sets the name of the file to write to. + + + This FileName string is a layout which may include instances of layout renderers. + This lets you use a single target to write to multiple files. + + + The following value makes NLog write logging events to files based on the log level in the directory where + the application runs. + ${basedir}/${level}.log + All Debug messages will go to Debug.log, all Info messages will go to Info.log and so on. + You can combine as many of the layout renderers as you want to produce an arbitrary log file name. + + + + + + Cleanup invalid values in a filename, e.g. slashes in a filename. If set to true, this can impact the performance of massive writes. + If set to false, nothing gets written when the filename is wrong. + + + + + + Is the an absolute or relative path? + + + + + + Gets or sets a value indicating whether to create directories if they do not exist. + + + Setting this to false may improve performance a bit, but you'll receive an error + when attempting to write to a directory that's not present. + + + + + + Gets or sets a value indicating whether to delete old log file on startup. + + + This option works only when the "FileName" parameter denotes a single file. + + + + + + Gets or sets a value indicating whether to replace file contents on each write instead of appending log message at the end. + + + + + + Gets or sets a value indicating whether to keep log file open instead of opening and closing it on each logging event. + + + Setting this property to True helps improve performance. + + + + + + Gets or sets the maximum number of log file names that should be stored as existing. + + + The bigger this number is the longer it will take to write each log record. The smaller the number is + the higher the chance that the clean function will be run when no new files have been opened. + + + + + Gets or sets a value indicating whether to enable log file(s) to be deleted. + + + + + + Gets or sets the file attributes (Windows only). + + + + + + Gets or sets the line ending mode. + + + + + + Gets or sets a value indicating whether to automatically flush the file buffers after each log message. + + + + + + Gets or sets the number of files to be kept open. Setting this to a higher value may improve performance + in a situation where a single File target is writing to many files + (such as splitting by level or by logger). + + + The files are managed on a LRU (least recently used) basis, which flushes + the files that have not been used for the longest period of time should the + cache become full. As a rule of thumb, you shouldn't set this parameter to + a very high value. A number like 10-15 shouldn't be exceeded, because you'd + be keeping a large number of files open which consumes system resources. + + + + + + Gets or sets the maximum number of seconds that files are kept open. If this number is negative the files are + not automatically closed after a period of inactivity. + + + + + + Gets or sets the maximum number of seconds before open files are flushed. If this number is negative or zero + the files are not flushed by timer. + + + + + + Gets or sets the log file buffer size in bytes. + + + + + + Gets or sets the file encoding. + + + + + + Gets or sets whether or not this target should just discard all data that its asked to write. + Mostly used for when testing NLog Stack except final write + + + + + + Gets or sets a value indicating whether concurrent writes to the log file by multiple processes on the same host. + + + This makes multi-process logging possible. NLog uses a special technique + that lets it keep the files open for writing. + + + + + + Gets or sets a value indicating whether concurrent writes to the log file by multiple processes on different network hosts. + + + This effectively prevents files from being kept open. + + + + + + Gets or sets a value indicating whether to write BOM (byte order mark) in created files + + + + + + Gets or sets the number of times the write is appended on the file before NLog + discards the log message. + + + + + + Gets or sets the delay in milliseconds to wait before attempting to write to the file again. + + + The actual delay is a random value between 0 and the value specified + in this parameter. On each failed attempt the delay base is doubled + up to times. + + + Assuming that ConcurrentWriteAttemptDelay is 10 the time to wait will be:

+ a random value between 0 and 10 milliseconds - 1st attempt
+ a random value between 0 and 20 milliseconds - 2nd attempt
+ a random value between 0 and 40 milliseconds - 3rd attempt
+ a random value between 0 and 80 milliseconds - 4th attempt
+ ...

+ and so on. + + + + +

+ Gets or sets a value indicating whether to archive old log file on startup. + + + This option works only when the "FileName" parameter denotes a single file. + After archiving the old file, the current log file will be empty. + + +
+ + + Gets or sets a value of the file size threshold to archive old log file on startup. + + + This option won't work if is set to false + Default value is 0 which means that the file is archived as soon as archival on + startup is enabled. + + + + + + Gets or sets a value specifying the date format to use when archiving files. + + + This option works only when the "ArchiveNumbering" parameter is set either to Date or DateAndSequence. + + + + + + Gets or sets the size in bytes above which log files will be automatically archived. + + Warning: combining this with isn't supported. We cannot create multiple archive files, if they should have the same name. + Choose: + + + Caution: Enabling this option can considerably slow down your file + logging in multi-process scenarios. If only one process is going to + be writing to the file, consider setting ConcurrentWrites + to false for maximum performance. + + + + + + Gets or sets a value indicating whether to automatically archive log files every time the specified time passes. + + + Files are moved to the archive as part of the write operation if the current period of time changes. For example + if the current hour changes from 10 to 11, the first write that will occur + on or after 11:00 will trigger the archiving. +

+ Caution: Enabling this option can considerably slow down your file + logging in multi-process scenarios. If only one process is going to + be writing to the file, consider setting ConcurrentWrites + to false for maximum performance. +

+
+ +
+ + + Is the an absolute or relative path? + + + + + + Gets or sets the name of the file to be used for an archive. + + + It may contain a special placeholder {#####} + that will be replaced with a sequence of numbers depending on + the archiving strategy. The number of hash characters used determines + the number of numerical digits to be used for numbering files. + + + + + + Gets or sets the maximum number of archive files that should be kept. + + + + + + Gets or sets the maximum days of archive files that should be kept. + + + + + + Gets or sets the way file archives are numbered. + + + + + + Used to compress log files during archiving. + This may be used to provide your own implementation of a zip file compressor, + on platforms other than .Net4.5. + Defaults to ZipArchiveFileCompressor on .Net4.5 and to null otherwise. + + + + + + Gets or sets a value indicating whether to compress archive files into the zip archive format. + + + + + + Gets or set a value indicating whether a managed file stream is forced, instead of using the native implementation. + + + + + + Gets or sets a value indicating whether file creation calls should be synchronized by a system global mutex. + + + + + + Gets or sets a value indicating whether the footer should be written only when the file is archived. + + + + + + Gets the characters that are appended after each line. + + + + + Refresh the ArchiveFilePatternToWatch option of the . + The log file must be watched for archiving when multiple processes are writing to the same + open file. + + + + + Removes records of initialized files that have not been + accessed in the last two days. + + + Files are marked 'initialized' for the purpose of writing footers when the logging finishes. + + + + + Removes records of initialized files that have not been + accessed after the specified date. + + The cleanup threshold. + + Files are marked 'initialized' for the purpose of writing footers when the logging finishes. + + + + + Flushes all pending file operations. + + The asynchronous continuation. + + The timeout parameter is ignored, because file APIs don't provide + the needed functionality. + + + + + Returns the suitable appender factory ( ) to be used to generate the file + appenders associated with the instance. + + The type of the file appender factory returned depends on the values of various properties. + + suitable for this instance. + + + + Initializes file logging by creating data structures that + enable efficient multi-file logging. + + + + + Closes the file(s) opened for writing. + + + + + Can be used if has been enabled. + + + + + Can be used if has been enabled. + + + + + Can be used if has been enabled. + + + + + Writes the specified logging event to a file specified in the FileName + parameter. + + The logging event. + + + + Get full filename (=absolute) and cleaned if needed. + + + + + + + NOTE! Obsolete, instead override Write(IList{AsyncLogEventInfo} logEvents) + + Writes an array of logging events to the log target. By default it iterates on all + events and passes them to "Write" method. Inheriting classes can use this method to + optimize batch writes. + + Logging events to be written out. + + + + Writes the specified array of logging events to a file specified in the FileName + parameter. + + An array of objects. + + This function makes use of the fact that the events are batched by sorting + the requests by filename. This optimizes the number of open/close calls + and can help improve performance. + + + + + Returns estimated size for memory stream, based on events count and first event size in bytes. + + Count of events + Bytes count of first event + + + + Formats the log event for write. + + The log event to be formatted. + A string representation of the log event. + + + + Gets the bytes to be written to the file. + + Log event. + Array of bytes that are ready to be written. + + + + Modifies the specified byte array before it gets sent to a file. + + The byte array. + The modified byte array. The function can do the modification in-place. + + + + Gets the bytes to be written to the file. + + The log event to be formatted. + to help format log event. + Optional temporary char-array to help format log event. + Destination for the encoded result. + + + + Formats the log event for write. + + The log event to be formatted. + for the result. + + + + Modifies the specified byte array before it gets sent to a file. + + The LogEvent being written + The byte array. + + + + Archives fileName to archiveFileName. + + File name to be archived. + Name of the archive file. + + + + Gets the correct formatting to be used based on the value of for converting values which will be inserting into file + names during archiving. + + This value will be computed only when a empty value or is passed into + + Date format to used irrespectively of value. + Formatting for dates. + + + + Calculate the DateTime of the requested day of the week. + + The DateTime of the previous log event. + The next occuring day of the week to return a DateTime for. + The DateTime of the next occuring dayOfWeek. + For example: if previousLogEventTimestamp is Thursday 2017-03-02 and dayOfWeek is Sunday, this will return + Sunday 2017-03-05. If dayOfWeek is Thursday, this will return *next* Thursday 2017-03-09. + + + + Invokes the archiving process after determining when and which type of archiving is required. + + File name to be checked and archived. + Log event that the instance is currently processing. + The DateTime of the previous log event for this file. + File has just been opened. + + + + Gets the pattern that archive files will match + + Filename of the log file + Log event that the instance is currently processing. + A string with a pattern that will match the archive file names + + + + Archives the file if it should be archived. + + The file name to check for. + Log event that the instance is currently processing. + The size in bytes of the next chunk of data to be written in the file. + The DateTime of the previous log event for this file. + File has just been opened. + True when archive operation of the file was completed (by this target or a concurrent target) + + + + Closes any active file-appenders that matches the input filenames. + File-appender is requested to invalidate/close its filehandle, but keeping its archive-mutex alive + + + + + Indicates if the automatic archiving process should be executed. + + File name to be written. + Log event that the instance is currently processing. + The size in bytes of the next chunk of data to be written in the file. + The DateTime of the previous log event for this file. + File has just been opened. + Filename to archive. If null, then nothing to archive. + + + + Returns the correct filename to archive + + + + + Gets the file name for archiving, or null if archiving should not occur based on file size. + + File name to be written. + The size in bytes of the next chunk of data to be written in the file. + File has just been opened. + Filename to archive. If null, then nothing to archive. + + + + Check if archive operation should check previous filename, because FileAppenderCache tells us current filename no longer exists + + + + + Returns the file name for archiving, or null if archiving should not occur based on date/time. + + File name to be written. + Log event that the instance is currently processing. + The DateTime of the previous log event for this file. + File has just been opened. + Filename to archive. If null, then nothing to archive. + + + + Truncates the input-time, so comparison of low resolution times (like dates) are not affected by ticks + + High resolution Time + Time Resolution Level + Truncated Low Resolution Time + + + + Evaluates which parts of a file should be written (header, content, footer) based on various properties of + instance and writes them. + + File name to be written. + Raw sequence of to be written into the content part of the file. + File has just been opened. + + + + Initialise a file to be used by the instance. Based on the number of initialized + files and the values of various instance properties clean up and/or archiving processes can be invoked. + + File name to be written. + Log event that the instance is currently processing. + The DateTime of the previous log event for this file (DateTime.MinValue if just initialized). + + + + Writes the file footer and finalizes the file in instance internal structures. + + File name to close. + Indicates if the file is being finalized for archiving. + + + + Writes the footer information to a file. + + The file path to write to. + + + + Decision logic whether to archive logfile on startup. + and properties. + + File name to be written. + Decision whether to archive or not. + + + + Invokes the archiving and clean up of older archive file based on the values of + and + properties respectively. + + File name to be written. + Log event that the instance is currently processing. + + + + Creates the file specified in and writes the file content in each entirety i.e. + Header, Content and Footer. + + The name of the file to be written. + Sequence of to be written in the content section of the file. + First attempt to write? + This method is used when the content of the log file is re-written on every write. + + + + Writes the header information and byte order mark to a file. + + File appender associated with the file. + + + + The sequence of to be written in a file after applying any formatting and any + transformations required from the . + + The layout used to render output message. + Sequence of to be written. + Usually it is used to render the header and hooter of the files. + + + + Controls the text and color formatting for + + + + + Creates a TextWriter for the console to start building a colored text message + + Active console stream + Optional StringBuilder to optimize performance + TextWriter for the console + + + + Releases the TextWriter for the console after having built a colored text message (Restores console colors) + + Colored TextWriter + Active console stream + Original foreground color for console (If changed) + Original background color for console (If changed) + Flush TextWriter + + + + Changes foreground color for the Colored TextWriter + + Colored TextWriter + New foreground color for the console + Old previous backgroundColor color for the console + Old foreground color for the console + + + + Changes backgroundColor color for the Colored TextWriter + + Colored TextWriter + New backgroundColor color for the console + Old previous backgroundColor color for the console + Old backgroundColor color for the console + + + + Restores console colors back to their original state + + Colored TextWriter + Original foregroundColor color for the console + Original backgroundColor color for the console + + + + Writes multiple characters to console in one operation (faster) + + Colored TextWriter + Output Text + Start Index + End Index + + + + Writes single character to console + + Colored TextWriter + Output Text + + + + Writes whole string and completes with newline + + Colored TextWriter + Output Text + + + + Default row highlight rules for the console printer + + + + + Check if cleanup should be performed on initialize new file + + Base archive file pattern + Maximum number of archive files that should be kept + Maximum days of archive files that should be kept + True, when archive cleanup is needed + + + + Create a wildcard file-mask that allows one to find all files belonging to the same archive. + + Base archive file pattern + Wildcard file-mask + + + + Search directory for all existing files that are part of the same archive. + + Base archive file pattern + + + + + Generate the next archive filename for the archive. + + Base archive file pattern + File date of archive + Existing files in the same archive + + + + + Return all files that should be removed from the provided archive. + + Base archive file pattern + Existing files in the same archive + Maximum number of archive files that should be kept + Maximum days of archive files that should be kept + + + + may be configured to compress archived files in a custom way + by setting before logging your first event. + + + + + Create archiveFileName by compressing fileName. + + Absolute path to the log file to compress. + Absolute path to the compressed archive file to create. + + + + Interface for serialization of values, maybe even objects to JSON format. + Useful for wrappers for existing serializers. + + + + + Returns a serialization of an object + into JSON format. + + The object to serialize to JSON. + Serialized value (null = Serialize failed). + + + + Options for JSON serialisation + + + + + Add quotes around object keys? + + + + + Format provider for value + + + + + Format string for value + + + + + Should non-ascii characters be encoded + + + + + Should forward slashes be escaped? If true, / will be converted to \/ + + + + + Serialize enum as string value + + + + + Should dictionary keys be sanitized. All characters must either be letters, numbers or underscore character (_). + + Any other characters will be converted to underscore character (_) + + + + + How far down the rabbit hole should the Json Serializer go with object-reflection before stopping + + + + Initializes a new instance of the class. + + + + Line ending mode. + + + + + Insert platform-dependent end-of-line sequence after each line. + + + + + Insert CR LF sequence (ASCII 13, ASCII 10) after each line. + + + + + Insert CR character (ASCII 13) after each line. + + + + + Insert LF character (ASCII 10) after each line. + + + + + Insert null terminator (ASCII 0) after each line. + + + + + Do not insert any line ending. + + + + + Gets the name of the LineEndingMode instance. + + + + + Gets the new line characters (value) of the LineEndingMode instance. + + + + + Initializes a new instance of . + + The mode name. + The new line characters to be used. + + + + Returns the that corresponds to the supplied . + + + The textual representation of the line ending mode, such as CRLF, LF, Default etc. + Name is not case sensitive. + + The value, that corresponds to the . + There is no line ending mode with the specified name. + + + + Compares two objects and returns a + value indicating whether the first one is equal to the second one. + + The first level. + The second level. + The value of mode1.NewLineCharacters == mode2.NewLineCharacters. + + + + Compares two objects and returns a + value indicating whether the first one is not equal to the second one. + + The first mode + The second mode + The value of mode1.NewLineCharacters != mode2.NewLineCharacters. + + + + Returns a string representation of the log level. + + Log level name. + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms + and data structures like a hash table. + + + + + Determines whether the specified is + equal to this instance. + + The to compare with + this instance. + + Value of true if the specified + is equal to this instance; otherwise, false. + + + The parameter is null. + + + + Indicates whether the current object is equal to another object of the same type. + true if the current object is equal to the parameter; otherwise, false. + An object to compare with this object. + + + + Provides a type converter to convert objects to and from other representations. + + + + + Returns whether this converter can convert an object of the given type to the type of this converter, using the specified context. + + + true if this converter can perform the conversion; otherwise, false. + + An that provides a format context. A that represents the type you want to convert from. + + + + Converts the given object to the type of this converter, using the specified context and culture information. + + + An that represents the converted value. + + An that provides a format context. The to use as the current culture. The to convert. The conversion cannot be performed. + + + + Sends log messages to a NLog Receiver Service (using WCF or Web Services). + + Documentation on NLog Wiki + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + Name of the target. + + + + Gets or sets the endpoint address. + + The endpoint address. + + + + + Gets or sets the name of the endpoint configuration in WCF configuration file. + + The name of the endpoint configuration. + + + + + Gets or sets a value indicating whether to use binary message encoding. + + + + + + Gets or sets a value indicating whether to use a WCF service contract that is one way (fire and forget) or two way (request-reply) + + + + + + Gets or sets the client ID. + + The client ID. + + + + + Gets the list of parameters. + + The parameters. + + + + + Gets or sets a value indicating whether to include per-event properties in the payload sent to the server. + + + + + + Called when log events are being sent (test hook). + + The events. + The async continuations. + True if events should be sent, false to stop processing them. + + + + Writes logging event to the log target. Must be overridden in inheriting + classes. + + Logging event to be written out. + + + + NOTE! Obsolete, instead override Write(IList{AsyncLogEventInfo} logEvents) + + Writes an array of logging events to the log target. By default it iterates on all + events and passes them to "Write" method. Inheriting classes can use this method to + optimize batch writes. + + Logging events to be written out. + + + + Writes an array of logging events to the log target. By default it iterates on all + events and passes them to "Append" method. Inheriting classes can use this method to + optimize batch writes. + + Logging events to be written out. + + + + Flush any pending log messages asynchronously (in case of asynchronous targets). + + The asynchronous continuation. + + + + Add value to the , returns ordinal in + + + lookup so only unique items will be added to + value to add + + + + + Creating a new instance of WcfLogReceiverClient + + Inheritors can override this method and provide their own + service configuration - binding and endpoint address + + This method marked as obsolete before NLog 4.3.11 and it may be removed in a future release. + + + + Creating a new instance of IWcfLogReceiverClient + + Inheritors can override this method and provide their own + service configuration - binding and endpoint address + + + virtual is used by end users + + + + Sends log messages by email using SMTP protocol. + + Documentation on NLog Wiki + +

+ To set up the target in the configuration file, + use the following syntax: +

+ +

+ This assumes just one target and a single rule. More configuration + options are described here. +

+

+ To set up the log target programmatically use code like this: +

+ +

+ Mail target works best when used with BufferingWrapper target + which lets you send multiple log messages in single mail +

+

+ To set up the buffered mail target in the configuration file, + use the following syntax: +

+ +

+ To set up the buffered mail target programmatically use code like this: +

+ +
+
+ + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + + + + Gets the mailSettings/smtp configuration from app.config in cases when we need those configuration. + E.g when UseSystemNetMailSettings is enabled and we need to read the From attribute from system.net/mailSettings/smtp + + Internal for mocking + + + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + Name of the target. + + + + Gets or sets sender's email address (e.g. joe@domain.com). + + + + + + Gets or sets recipients' email addresses separated by semicolons (e.g. john@domain.com;jane@domain.com). + + + + + + Gets or sets CC email addresses separated by semicolons (e.g. john@domain.com;jane@domain.com). + + + + + + Gets or sets BCC email addresses separated by semicolons (e.g. john@domain.com;jane@domain.com). + + + + + + Gets or sets a value indicating whether to add new lines between log entries. + + A value of true if new lines should be added; otherwise, false. + + + + + Gets or sets the mail subject. + + + + + + Gets or sets mail message body (repeated for each log message send in one mail). + + Alias for the Layout property. + + + + + Gets or sets encoding to be used for sending e-mail. + + + + + + Gets or sets a value indicating whether to send message as HTML instead of plain text. + + + + + + Gets or sets SMTP Server to be used for sending. + + + + + + Gets or sets SMTP Authentication mode. + + + + + + Gets or sets the username used to connect to SMTP server (used when SmtpAuthentication is set to "basic"). + + + + + + Gets or sets the password used to authenticate against SMTP server (used when SmtpAuthentication is set to "basic"). + + + + + + Gets or sets a value indicating whether SSL (secure sockets layer) should be used when communicating with SMTP server. + + . + + + + Gets or sets the port number that SMTP Server is listening on. + + + + + + Gets or sets a value indicating whether the default Settings from System.Net.MailSettings should be used. + + + + + + Specifies how outgoing email messages will be handled. + + + + + + Gets or sets the folder where applications save mail messages to be processed by the local SMTP server. + + + + + + Gets or sets the priority used for sending mails. + + + + + + Gets or sets a value indicating whether NewLine characters in the body should be replaced with
tags. +
+ Only happens when is set to true. + +
+ + + Gets or sets a value indicating the SMTP client timeout. + + Warning: zero is not infinite waiting + + + + + Writes async log event to the mail target. + + The logging event. + + + + NOTE! Obsolete, instead override Write(IList{AsyncLogEventInfo} logEvents) + + Writes an array of logging events to the log target. By default it iterates on all + events and passes them to "Write" method. Inheriting classes can use this method to + optimize batch writes. + + Logging events to be written out. + + + + Writes log events to the mail target. + + Array of logging events. + + + + Initializes the target. Can be used by inheriting classes + to initialize logging. + + + + + Create mail and send with SMTP + + event printed in the body of the event + + + + Create buffer for body + + all events + first event for header + last event for footer + + + + + Set properties of + + last event for username/password + client to set properties on + Configure not at , as the properties could have layout renderers. + + + + Handle if it is a virtual directory. + + + + + + + Create key for grouping. Needed for multiple events in one mail message + + event for rendering layouts + string to group on + + + + Append rendered to + + append to this + event for rendering + append if not null + + + + Create the mail message with the addresses, properties and body. + + + + + Render and add the addresses to + + Addresses appended to this list + layout with addresses, ; separated + event for rendering the + added a address? + + + + Writes log messages to in memory for programmatic retrieval. + + Documentation on NLog Wiki + +

+ To set up the target in the configuration file, + use the following syntax: +

+ +

+ This assumes just one target and a single rule. More configuration + options are described here. +

+

+ To set up the log target programmatically use code like this: +

+ +
+
+ + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + + + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + Name of the target. + + + + Gets the list of logs gathered in the . + + + + + Gets or sets the max number of items to have in memory + + + + + + Renders the logging event message and adds to + + The logging event. + + + + A parameter to MethodCall. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The layout to use for parameter value. + + + + Initializes a new instance of the class. + + Name of the parameter. + The layout. + + + + Initializes a new instance of the class. + + The name of the parameter. + The layout. + The type of the parameter. + + + + Gets or sets the name of the parameter. + + + + + + Gets or sets the type of the parameter. Obsolete alias for + + + + + + Gets or sets the type of the parameter. + + + + + + Gets or sets the layout that should be use to calculate the value for the parameter. + + + + + + Calls the specified static method on each log message and passes contextual parameters to it. + + Documentation on NLog Wiki + +

+ To set up the target in the configuration file, + use the following syntax: +

+ +

+ This assumes just one target and a single rule. More configuration + options are described here. +

+

+ To set up the log target programmatically use code like this: +

+ +
+
+ + + Gets or sets the class name. + + + + + + Gets or sets the method name. The method must be public and static. + + Use the AssemblyQualifiedName , https://msdn.microsoft.com/en-us/library/system.type.assemblyqualifiedname(v=vs.110).aspx + e.g. + + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + Name of the target. + + + + Initializes a new instance of the class. + + Name of the target. + Method to call on logevent. + + + + Initializes the target. + + + + + Calls the specified Method. + + Method parameters. + The logging event. + + + + Calls the specified Method. + + Method parameters. + + + + The base class for all targets which call methods (local or remote). + Manages parameters and type coercion. + + + + + Initializes a new instance of the class. + + + + + Gets the array of parameters to be passed. + + + + + + + + + Prepares an array of parameters to be passed based on the logging event and calls DoInvoke(). + + The logging event. + + + + Calls the target DoInvoke method, and handles AsyncContinuation callback + + Method call parameters. + The logging event. + + + + Calls the target DoInvoke method, and handles AsyncContinuation callback + + Method call parameters. + The continuation. + + + + Calls the target method. Must be implemented in concrete classes. + + Method call parameters. + + + + Sends log messages over the network. + + Documentation on NLog Wiki + +

+ To set up the target in the configuration file, + use the following syntax: +

+ +

+ This assumes just one target and a single rule. More configuration + options are described here. +

+

+ To set up the log target programmatically use code like this: +

+ +

+ To print the results, use any application that's able to receive messages over + TCP or UDP. NetCat is + a simple but very powerful command-line tool that can be used for that. This image + demonstrates the NetCat tool receiving log messages from Network target. +

+ +

+ NOTE: If your receiver application is ever likely to be off-line, don't use TCP protocol + or you'll get TCP timeouts and your application will be very slow. + Either switch to UDP transport or use AsyncWrapper target + so that your application threads will not be blocked by the timing-out connection attempts. +

+

+ There are two specialized versions of the Network target: Chainsaw + and NLogViewer which write to instances of Chainsaw log4j viewer + or NLogViewer application respectively. +

+
+
+ + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + + + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + Name of the target. + + + + Gets or sets the network address. + + + The network address can be: +
    +
  • tcp://host:port - TCP (auto select IPv4/IPv6) (not supported on Windows Phone 7.0)
  • +
  • tcp4://host:port - force TCP/IPv4 (not supported on Windows Phone 7.0)
  • +
  • tcp6://host:port - force TCP/IPv6 (not supported on Windows Phone 7.0)
  • +
  • udp://host:port - UDP (auto select IPv4/IPv6, not supported on Silverlight and on Windows Phone 7.0)
  • +
  • udp4://host:port - force UDP/IPv4 (not supported on Silverlight and on Windows Phone 7.0)
  • +
  • udp6://host:port - force UDP/IPv6 (not supported on Silverlight and on Windows Phone 7.0)
  • +
  • http://host:port/pageName - HTTP using POST verb
  • +
  • https://host:port/pageName - HTTPS using POST verb
  • +
+ For SOAP-based webservice support over HTTP use WebService target. +
+ +
+ + + Gets or sets a value indicating whether to keep connection open whenever possible. + + + + + + Gets or sets a value indicating whether to append newline at the end of log message. + + + + + + Gets or sets the end of line value if a newline is appended at the end of log message . + + + + + + Gets or sets the maximum message size in bytes. + + + + + + Gets or sets the size of the connection cache (number of connections which are kept alive). + + + + + + Gets or sets the maximum current connections. 0 = no maximum. + + + + + + Gets or sets the action that should be taken if the will be more connections than . + + + + + + Gets or sets the maximum queue size. + + + + + + Gets or sets the action that should be taken if the message is larger than + maxMessageSize. + + + + + + Gets or sets the encoding to be used. + + + + + + Get or set the SSL/TLS protocols. Default no SSL/TLS is used. Currently only implemented for TCP. + + + + + + The number of seconds a connection will remain idle before the first keep-alive probe is sent + + + + + + Flush any pending log messages asynchronously (in case of asynchronous targets). + + The asynchronous continuation. + + + + Closes the target. + + + + + Sends the + rendered logging event over the network optionally concatenating it with a newline character. + + The logging event. + + + + Try to remove. + + + + + removed something? + + + + Gets the bytes to be written. + + Log event. + Byte array. + + + + The action to be taken when there are more connections then the max. + + + + + Just allow it. + + + + + Discard the connection item. + + + + + Block until there's more room in the queue. + + + + + Action that should be taken if the message overflows. + + + + + Report an error. + + + + + Split the message into smaller pieces. + + + + + Discard the entire message. + + + + + Represents a parameter to a NLogViewer target. + + + + + Initializes a new instance of the class. + + + + + Gets or sets viewer parameter name. + + + + + + Gets or sets the layout that should be use to calculate the value for the parameter. + + + + + + Gets or sets whether an attribute with empty value should be included in the output + + + + + + Sends log messages to the remote instance of NLog Viewer. + + Documentation on NLog Wiki + +

+ To set up the target in the configuration file, + use the following syntax: +

+ +

+ This assumes just one target and a single rule. More configuration + options are described here. +

+

+ To set up the log target programmatically use code like this: +

+ +

+ NOTE: If your receiver application is ever likely to be off-line, don't use TCP protocol + or you'll get TCP timeouts and your application will crawl. + Either switch to UDP transport or use AsyncWrapper target + so that your application threads will not be blocked by the timing-out connection attempts. +

+
+
+ + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + + + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + Name of the target. + + + + Gets or sets a value indicating whether to include NLog-specific extensions to log4j schema. + + + + + + Gets or sets the AppInfo field. By default it's the friendly name of the current AppDomain. + + + + + + Gets or sets a value indicating whether to include call site (class and method name) in the information sent over the network. + + + + + + Gets or sets a value indicating whether to include source info (file name and line number) in the information sent over the network. + + + + + + Gets or sets a value indicating whether to include dictionary contents. + + + + + + Gets or sets a value indicating whether to include stack contents. + + + + + + Gets or sets a value indicating whether to include dictionary contents. + + + + + + Gets or sets a value indicating whether to include contents of the stack. + + + + + + Gets or sets the NDLC item separator. + + + + + + Gets or sets the option to include all properties from the log events + + + + + + Gets or sets the NDC item separator. + + + + + + Gets or sets the renderer for log4j:event logger-xml-attribute (Default ${logger}) + + + + + + Gets the collection of parameters. Each parameter contains a mapping + between NLog layout and a named parameter. + + + + + + Gets the layout renderer which produces Log4j-compatible XML events. + + + + + Gets or sets the instance of that is used to format log messages. + + + + + + Discards log messages. Used mainly for debugging and benchmarking. + + Documentation on NLog Wiki + +

+ To set up the target in the configuration file, + use the following syntax: +

+ +

+ This assumes just one target and a single rule. More configuration + options are described here. +

+

+ To set up the log target programmatically use code like this: +

+ +
+
+ + + Gets or sets a value indicating whether to perform layout calculation. + + + + + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + + + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + + + + + Does nothing. Optionally it calculates the layout text but + discards the results. + + The logging event. + + + + Outputs log messages through the OutputDebugString() Win32 API. + + Documentation on NLog Wiki + +

+ To set up the target in the configuration file, + use the following syntax: +

+ +

+ This assumes just one target and a single rule. More configuration + options are described here. +

+

+ To set up the log target programmatically use code like this: +

+ +
+
+ + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + + + + Initializes a new instance of the class. + + + The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} + + Name of the target. + + + + Outputs the rendered logging event through the OutputDebugString() Win32 API. + + The logging event. + + + + Increments specified performance counter on each write. + + Documentation on NLog Wiki + +

+ To set up the target in the configuration file, + use the following syntax: +

+ +

+ This assumes just one target and a single rule. More configuration + options are described here. +

+

+ To set up the log target programmatically use code like this: +

+ +
+ + TODO: + 1. Unable to create a category allowing multiple counter instances (.Net 2.0 API only, probably) + 2. Is there any way of adding new counters without deleting the whole category? + 3. There should be some mechanism of resetting the counter (e.g every day starts from 0), or auto-switching to + another counter instance (with dynamic creation of new instance). This could be done with layouts. + +
+ + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + Name of the target. + + + + Gets or sets a value indicating whether performance counter should be automatically created. + + + + + + Gets or sets the name of the performance counter category. + + + + + + Gets or sets the name of the performance counter. + + + + + + Gets or sets the performance counter instance name. + + + + + + Gets or sets the counter help text. + + + + + + Gets or sets the performance counter type. + + + + + + The value by which to increment the counter. + + + + + + Performs installation which requires administrative permissions. + + The installation context. + + + + Performs uninstallation which requires administrative permissions. + + The installation context. + + + + Determines whether the item is installed. + + The installation context. + + Value indicating whether the item is installed or null if it is not possible to determine. + + + + + Increments the configured performance counter. + + Log event. + + + + Closes the target and releases any unmanaged resources. + + + + + Ensures that the performance counter has been initialized. + + True if the performance counter is operational, false otherwise. + + + + SMTP authentication modes. + + + + + No authentication. + + + + + Basic - username and password. + + + + + NTLM Authentication. + + Represents logging target. - + Are all layouts in this target thread-agnostic, if so we don't precalculate the layouts + + + The Max StackTraceUsage of all the in this Target + + + + + Gets or sets the name of the target. + + + + + + Target supports reuse of internal buffers, and doesn't have to constantly allocate new buffers + Required for legacy NLog-targets, that expects buffers to remain stable after Write-method exit + + + + + + Gets the object which can be used to synchronize asynchronous operations that must rely on the . + + + + + Gets the logging configuration this target is part of. + + + + + Gets a value indicating whether the target has been initialized. + + Can be used if has been enabled. @@ -19041,12 +27153,17 @@ Writes a log event to the log target, in a thread safe manner. + Any override of this method has to provide their own synchronization mechanism. + + !WARNING! Custom targets should only override this method if able to provide their + own synchronization mechanism. -objects are not guaranteed to be + thread-safe, so using them without a SyncRoot-object can be dangerous. Log event to be written out. - NOTE! Will soon be marked obsolete. Instead override Write(IList{AsyncLogEventInfo} logEvents) + NOTE! Obsolete, instead override Write(IList{AsyncLogEventInfo} logEvents) Writes an array of logging events to the log target. By default it iterates on all events and passes them to "Write" method. Inheriting classes can use this method to @@ -19064,15 +27181,24 @@ - NOTE! Will soon be marked obsolete. Instead override Write(IList{AsyncLogEventInfo} logEvents) + NOTE! Obsolete, instead override WriteAsyncThreadSafe(IList{AsyncLogEventInfo} logEvents) Writes an array of logging events to the log target, in a thread safe manner. + + !WARNING! Custom targets should only override this method if able to provide their + own synchronization mechanism. -objects are not guaranteed to be + thread-safe, so using them without a SyncRoot-object can be dangerous. Logging events to be written out. Writes an array of logging events to the log target, in a thread safe manner. + Any override of this method has to provide their own synchronization mechanism. + + !WARNING! Custom targets should only override this method if able to provide their + own synchronization mechanism. -objects are not guaranteed to be + thread-safe, so using them without a SyncRoot-object can be dangerous. Logging events to be written out. @@ -19095,7 +27221,7 @@ Register a custom Target. - Short-cut for registing to default + Short-cut for registering to default Type of the Target. Name of the Target. @@ -19103,220 +27229,313 @@ Register a custom Target. - Short-cut for registing to default + Short-cut for registering to default Type of the Target. Name of the Target. - + - The Max StackTraceUsage of all the in this Target + Should the exception be rethrown? + + + Upgrade to private protected when using C# 7.2 + + + + Marks class as a logging target and assigns a name to it. + + This attribute is not required when registering the target in the API. + + + + Initializes a new instance of the class. + + Name of the target. + + + + Gets or sets a value indicating whether to the target is a wrapper target (used to generate the target summary documentation page). - + - Gets or sets the name of the target. - - - - - - Target supports reuse of internal buffers, and doesn't have to constantly allocate new buffers - Required for legacy NLog-targets, that expects buffers to remain stable after Write-method exit - - - - - - Gets the object which can be used to synchronize asynchronous operations that must rely on the . + Gets or sets a value indicating whether to the target is a compound target (used to generate the target summary documentation page). - + - Gets the logging configuration this target is part of. + Attribute details for - + - Gets a value indicating whether the target has been initialized. + Initializes a new instance of the class. - + + + Initializes a new instance of the class. + + The name of the attribute. + The layout of the attribute's value. + + + + Gets or sets the name of the attribute. + + + + + + Gets or sets the layout that will be rendered as the attribute's value. + + + + + + Gets or sets when an empty value should cause the property to be included + + + + + Gets or sets the type of the property. + + + + + Represents target that supports context capture using MDLC, MDC, NDLC and NDC + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets or sets a value indicating whether to include contents of the dictionary + + + + + + Gets or sets a value indicating whether to include call site (class and method name) in the + + + + + + Gets or sets a value indicating whether to include source info (file name and line number) in the + + + + + + Gets the array of custom attributes to be passed into the logevent context + + + + Constructor - - - Override this to create the actual logging task - - Example of how to override this method, and call custom async method - - protected override Task WriteAsyncTask(LogEventInfo logEvent, CancellationToken token) - { - return CustomWriteAsync(logEvent, token); - } - - private async Task CustomWriteAsync(LogEventInfo logEvent, CancellationToken token) - { - await MyLogMethodAsync(logEvent, token).ConfigureAwait(false); - } - - - The log event. - The cancellation token - + + - + - Schedules the LogEventInfo for async writing + Check if logevent has properties (or context properties) - The log event. + + True if properties should be included - + - Schedules notification of when all messages has been written + Checks if any context properties, and if any returns them as a single dictionary - + + Dictionary with any context properties for the logEvent (Null if none found) - + - Closes Target by updating CancellationToken + Checks if any context properties, and if any returns them as a single dictionary + + Optional prefilled dictionary + Dictionary with any context properties for the logEvent (Null if none found) - + - Releases any managed resources + Creates combined dictionary of all configured properties for logEvent - + + Dictionary with all collected properties for logEvent - + - Checks the internal queue for the next to create a new task for + Creates combined dictionary of all configured properties for logEvent - Used for race-condition validation betweewn task-completion and timeout + + Optional prefilled dictionary + Dictionary with all collected properties for logEvent - + - Creates new task to handle the writing of the input + Generates a new unique name, when duplicate names are detected - LogEvent to write - New Task created [true / false] + LogEvent that triggered the duplicate name + Duplicate item name + Item Value + Dictionary of context values + New (unique) value (or null to skip value). If the same value is used then the item will be overwritten - + - Handles that scheduled task has completed (succesfully or failed), and starts the next pending task + Returns the captured snapshot of for the - Task just completed - AsyncContinuation to notify of success or failure + + Dictionary with MDC context if any, else null - + - Timer method, that is fired when pending task fails to complete within timeout + Returns the captured snapshot of for the - + + Dictionary with MDLC context if any, else null - + - How many seconds a Task is allowed to run before it is cancelled. + Returns the captured snapshot of for the + + Dictionary with NDC context if any, else null - + - Task Scheduler used for processing async Tasks + Returns the captured snapshot of for the + + Dictionary with NDLC context if any, else null - + - Sends log messages to the remote instance of Chainsaw application from log4j. + Takes snapshot of for the - Documentation on NLog Wiki - -

- To set up the target in the configuration file, - use the following syntax: -

- -

- This assumes just one target and a single rule. More configuration - options are described here. -

-

- To set up the log target programmatically use code like this: -

- -

- NOTE: If your receiver application is ever likely to be off-line, don't use TCP protocol - or you'll get TCP timeouts and your application will crawl. - Either switch to UDP transport or use AsyncWrapper target - so that your application threads will not be blocked by the timing-out connection attempts. -

-
+ + Optional pre-allocated dictionary for the snapshot + Dictionary with GDC context if any, else null
- + - Sends log messages to the remote instance of NLog Viewer. + Takes snapshot of for the - Documentation on NLog Wiki - -

- To set up the target in the configuration file, - use the following syntax: -

- -

- This assumes just one target and a single rule. More configuration - options are described here. -

-

- To set up the log target programmatically use code like this: -

- -

- NOTE: If your receiver application is ever likely to be off-line, don't use TCP protocol - or you'll get TCP timeouts and your application will crawl. - Either switch to UDP transport or use AsyncWrapper target - so that your application threads will not be blocked by the timing-out connection attempts. -

-
+ + Optional pre-allocated dictionary for the snapshot + Dictionary with MDC context if any, else null
- + - Sends log messages over the network. + Take snapshot of a single object value from - Documentation on NLog Wiki - -

- To set up the target in the configuration file, - use the following syntax: -

- -

- This assumes just one target and a single rule. More configuration - options are described here. -

-

- To set up the log target programmatically use code like this: -

- -

- To print the results, use any application that's able to receive messages over - TCP or UDP. NetCat is - a simple but very powerful command-line tool that can be used for that. This image - demonstrates the NetCat tool receiving log messages from Network target. -

- -

- NOTE: If your receiver application is ever likely to be off-line, don't use TCP protocol - or you'll get TCP timeouts and your application will be very slow. - Either switch to UDP transport or use AsyncWrapper target - so that your application threads will not be blocked by the timing-out connection attempts. -

-

- There are two specialized versions of the Network target: Chainsaw - and NLogViewer which write to instances of Chainsaw log4j viewer - or NLogViewer application respectively. -

-
+ Log event + MDC key + MDC value + Snapshot of MDC value + Include object value in snapshot +
+ + + Takes snapshot of for the + + + Optional pre-allocated dictionary for the snapshot + Dictionary with MDLC context if any, else null + + + + Take snapshot of a single object value from + + Log event + MDLC key + MDLC value + Snapshot of MDLC value + Include object value in snapshot + + + + Takes snapshot of for the + + + Dictionary with NDC context if any, else null + + + + Take snapshot of a single object value from + + Log event + NDC value + Snapshot of NDC value + Include object value in snapshot + + + + Takes snapshot of for the + + + Dictionary with NDLC context if any, else null + + + + Take snapshot of a single object value from + + Log event + NDLC value + Snapshot of NDLC value + Include object value in snapshot + + + + Take snapshot of a single object value + + Log event + Key Name (null when NDC / NDLC) + Object Value + Snapshot of value + Include object value in snapshot + + + Internal Layout that allows capture of MDC context + + + Internal Layout that allows capture of NDC context + + + Internal Layout that allows capture of MDLC context + + + Internal Layout that allows capture of NDLC context @@ -19325,7 +27544,7 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} @@ -19337,237 +27556,6 @@ - - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - - - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - Name of the target. - - - - Flush any pending log messages asynchronously (in case of asynchronous targets). - - The asynchronous continuation. - - - - Closes the target. - - - - - Sends the - rendered logging event over the network optionally concatenating it with a newline character. - - The logging event. - - - - Try to remove. - - - - - removed something? - - - - Gets the bytes to be written. - - Log event. - Byte array. - - - - Gets or sets the network address. - - - The network address can be: -
    -
  • tcp://host:port - TCP (auto select IPv4/IPv6) (not supported on Windows Phone 7.0)
  • -
  • tcp4://host:port - force TCP/IPv4 (not supported on Windows Phone 7.0)
  • -
  • tcp6://host:port - force TCP/IPv6 (not supported on Windows Phone 7.0)
  • -
  • udp://host:port - UDP (auto select IPv4/IPv6, not supported on Silverlight and on Windows Phone 7.0)
  • -
  • udp4://host:port - force UDP/IPv4 (not supported on Silverlight and on Windows Phone 7.0)
  • -
  • udp6://host:port - force UDP/IPv6 (not supported on Silverlight and on Windows Phone 7.0)
  • -
  • http://host:port/pageName - HTTP using POST verb
  • -
  • https://host:port/pageName - HTTPS using POST verb
  • -
- For SOAP-based webservice support over HTTP use WebService target. -
- -
- - - Gets or sets a value indicating whether to keep connection open whenever possible. - - - - - - Gets or sets a value indicating whether to append newline at the end of log message. - - - - - - Gets or sets the end of line value if a newline is appended at the end of log message . - - - - - - Gets or sets the maximum message size in bytes. - - - - - - Gets or sets the size of the connection cache (number of connections which are kept alive). - - - - - - Gets or sets the maximum current connections. 0 = no maximum. - - - - - - Gets or sets the action that should be taken if the will be more connections than . - - - - - - Gets or sets the maximum queue size. - - - - - Gets or sets the action that should be taken if the message is larger than - maxMessageSize. - - - - - - Gets or sets the encoding to be used. - - - - - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - - - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - Name of the target. - - - - Gets or sets a value indicating whether to include NLog-specific extensions to log4j schema. - - - - - - Gets or sets the AppInfo field. By default it's the friendly name of the current AppDomain. - - - - - - Gets or sets a value indicating whether to include call site (class and method name) in the information sent over the network. - - - - - - Gets or sets a value indicating whether to include source info (file name and line number) in the information sent over the network. - - - - - - Gets or sets a value indicating whether to include dictionary contents. - - - - - - Gets or sets a value indicating whether to include dictionary contents. - - - - - - Gets or sets a value indicating whether to include stack contents. - - - - - - Gets or sets the NDC item separator. - - - - - - Gets the collection of parameters. Each parameter contains a mapping - between NLog layout and a named parameter. - - - - - - Gets the layout renderer which produces Log4j-compatible XML events. - - - - - Gets or sets the instance of that is used to format log messages. - - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class with a name. - - Name of the target. - - - - Writes log messages to the console with customizable coloring. - - Documentation on NLog Wiki - Represents target that supports string formatting using layouts. @@ -19575,7 +27563,7 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} @@ -19605,3270 +27593,6 @@ The layout with header and footer. - - - Should logging being paused/stopped because of the race condition bug in Console.Writeline? - - - Console.Out.Writeline / Console.Error.Writeline could throw 'IndexOutOfRangeException', which is a bug. - See http://stackoverflow.com/questions/33915790/console-out-and-console-error-race-condition-error-in-a-windows-service-written - and https://connect.microsoft.com/VisualStudio/feedback/details/2057284/console-out-probable-i-o-race-condition-issue-in-multi-threaded-windows-service - - Full error: - Error during session close: System.IndexOutOfRangeException: Probable I/ O race condition detected while copying memory. - The I/ O package is not thread safe by default.In multithreaded applications, - a stream must be accessed in a thread-safe way, such as a thread - safe wrapper returned by TextReader's or - TextWriter's Synchronized methods.This also applies to classes like StreamWriter and StreamReader. - - - - - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - - - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - Name of the target. - - - - Initializes the target. - - - - - Closes the target and releases any unmanaged resources. - - - - - Writes the specified log event to the console highlighting entries - and words based on a set of defined rules. - - Log event. - - - - Gets or sets a value indicating whether the error stream (stderr) should be used instead of the output stream (stdout). - - - - - - Gets or sets a value indicating whether to use default row highlighting rules. - - - The default rules are: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ConditionForeground ColorBackground Color
level == LogLevel.FatalRedNoChange
level == LogLevel.ErrorYellowNoChange
level == LogLevel.WarnMagentaNoChange
level == LogLevel.InfoWhiteNoChange
level == LogLevel.DebugGrayNoChange
level == LogLevel.TraceDarkGrayNoChange
-
- -
- - - The encoding for writing messages to the . - - Has side effect - - - - Gets or sets a value indicating whether to auto-check if the console is available. - - Disables console writing if Environment.UserInteractive = False (Windows Service) - - Disables console writing if Console Standard Input is not available (Non-Console-App) - - - - - Gets the row highlighting rules. - - - - - - Gets the word highlighting rules. - - - - - - Color pair (foreground and background). - - - - - Colored console output color. - - - Note that this enumeration is defined to be binary compatible with - .NET 2.0 System.ConsoleColor + some additions - - - - - Black Color (#000000). - - - - - Dark blue Color (#000080). - - - - - Dark green Color (#008000). - - - - - Dark Cyan Color (#008080). - - - - - Dark Red Color (#800000). - - - - - Dark Magenta Color (#800080). - - - - - Dark Yellow Color (#808000). - - - - - Gray Color (#C0C0C0). - - - - - Dark Gray Color (#808080). - - - - - Blue Color (#0000FF). - - - - - Green Color (#00FF00). - - - - - Cyan Color (#00FFFF). - - - - - Red Color (#FF0000). - - - - - Magenta Color (#FF00FF). - - - - - Yellow Color (#FFFF00). - - - - - White Color (#FFFFFF). - - - - - Don't change the color. - - - - - The row-highlighting condition. - - - - - Initializes static members of the ConsoleRowHighlightingRule class. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - The condition. - Color of the foreground. - Color of the background. - - - - Checks whether the specified log event matches the condition (if any). - - - Log event. - - - A value of if the condition is not defined or - if it matches, otherwise. - - - - - Gets the default highlighting rule. Doesn't change the color. - - - - - Gets or sets the condition that must be met in order to set the specified foreground and background color. - - - - - - Gets or sets the foreground color. - - - - - - Gets or sets the background color. - - - - - - Writes log messages to the console. - - Documentation on NLog Wiki - -

- To set up the target in the configuration file, - use the following syntax: -

- -

- This assumes just one target and a single rule. More configuration - options are described here. -

-

- To set up the log target programmatically use code like this: -

- -
-
- - - Should logging being paused/stopped because of the race condition bug in Console.Writeline? - - - Console.Out.Writeline / Console.Error.Writeline could throw 'IndexOutOfRangeException', which is a bug. - See http://stackoverflow.com/questions/33915790/console-out-and-console-error-race-condition-error-in-a-windows-service-written - and https://connect.microsoft.com/VisualStudio/feedback/details/2057284/console-out-probable-i-o-race-condition-issue-in-multi-threaded-windows-service - - Full error: - Error during session close: System.IndexOutOfRangeException: Probable I/ O race condition detected while copying memory. - The I/ O package is not thread safe by default.In multithreaded applications, - a stream must be accessed in a thread-safe way, such as a thread - safe wrapper returned by TextReader's or - TextWriter's Synchronized methods.This also applies to classes like StreamWriter and StreamReader. - - - - - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - - - - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - Name of the target. - - - - Initializes the target. - - - - - Closes the target and releases any unmanaged resources. - - - - - Writes the specified logging event to the Console.Out or - Console.Error depending on the value of the Error flag. - - The logging event. - - Note that the Error option is not supported on .NET Compact Framework. - - - - - Write to output - - text to be written. - - - - Gets or sets a value indicating whether to send the log messages to the standard error instead of the standard output. - - - - - - The encoding for writing messages to the . - - Has side effect - - - - Gets or sets a value indicating whether to auto-check if the console is available - - Disables console writing if Environment.UserInteractive = False (Windows Service) - - Disables console writing if Console Standard Input is not available (Non-Console-App) - - - - - Highlighting rule for Win32 colorful console. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - The text to be matched.. - Color of the foreground. - Color of the background. - - - - Get regex options. - - Default option to start with. - - - - - Get Expression for a . - - - - - - Replace regex result - - - - - - - Gets or sets the regular expression to be matched. You must specify either text or regex. - - - - - - Compile the ? This can improve the performance, but at the costs of more memory usage. If false, the Regex Cache is used. - - - - - Gets or sets the text to be matched. You must specify either text or regex. - - - - - - Gets or sets a value indicating whether to match whole words only. - - - - - - Gets or sets a value indicating whether to ignore case when comparing texts. - - - - - - Gets or sets the foreground color. - - - - - - Gets or sets the background color. - - - - - - Gets the compiled regular expression that matches either Text or Regex property. Only used when is true. - - Access this property will compile the Regex. - - - - Information about database command + parameters. - - - - - Initializes a new instance of the class. - - - - - Gets or sets the type of the command. - - The type of the command. - - - - - Gets or sets the connection string to run the command against. If not provided, connection string from the target is used. - - - - - - Gets or sets the command text. - - - - - - Gets or sets a value indicating whether to ignore failures. - - - - - - Gets the collection of parameters. Each parameter contains a mapping - between NLog layout and a database named or positional parameter. - - - - - - Represents a parameter to a Database target. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - Name of the parameter. - The parameter layout. - - - - Gets or sets the database parameter name. - - - - - - Gets or sets the layout that should be use to calcuate the value for the parameter. - - - - - - Gets or sets the database parameter size. - - - - - - Gets or sets the database parameter precision. - - - - - - Gets or sets the database parameter scale. - - - - - - Writes log messages to the database using an ADO.NET provider. - - Documentation on NLog Wiki - - - The configuration is dependent on the database type, because - there are differnet methods of specifying connection string, SQL - command and command parameters. - - MS SQL Server using System.Data.SqlClient: - - Oracle using System.Data.OracleClient: - - Oracle using System.Data.OleDBClient: - - To set up the log target programmatically use code like this (an equivalent of MSSQL configuration): - - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - Name of the target. - - - - Performs installation which requires administrative permissions. - - The installation context. - - - - Performs uninstallation which requires administrative permissions. - - The installation context. - - - - Determines whether the item is installed. - - The installation context. - - Value indicating whether the item is installed or null if it is not possible to determine. - - - - - Initializes the target. Can be used by inheriting classes - to initialize logging. - - - - - Set the to use it for opening connections to the database. - - - - - Closes the target and releases any unmanaged resources. - - - - - Writes the specified logging event to the database. It creates - a new database command, prepares parameters for it by calculating - layouts and executes the command. - - The logging event. - - - - NOTE! Will soon be marked obsolete. Instead override Write(IList{AsyncLogEventInfo} logEvents) - - Writes an array of logging events to the log target. By default it iterates on all - events and passes them to "Write" method. Inheriting classes can use this method to - optimize batch writes. - - Logging events to be written out. - - - - Writes an array of logging events to the log target. By default it iterates on all - events and passes them to "Write" method. Inheriting classes can use this method to - optimize batch writes. - - Logging events to be written out. - - - - Build the connectionstring from the properties. - - - Using at first, and falls back to the properties , - , and - - Event to render the layout inside the properties. - - - - - Gets or sets the name of the database provider. - - - - The parameter name should be a provider invariant name as registered in machine.config or app.config. Common values are: - -
    -
  • System.Data.SqlClient - SQL Sever Client
  • -
  • System.Data.SqlServerCe.3.5 - SQL Sever Compact 3.5
  • -
  • System.Data.OracleClient - Oracle Client from Microsoft (deprecated in .NET Framework 4)
  • -
  • Oracle.DataAccess.Client - ODP.NET provider from Oracle
  • -
  • System.Data.SQLite - System.Data.SQLite driver for SQLite
  • -
  • Npgsql - Npgsql driver for PostgreSQL
  • -
  • MySql.Data.MySqlClient - MySQL Connector/Net
  • -
- (Note that provider invariant names are not supported on .NET Compact Framework). - - Alternatively the parameter value can be be a fully qualified name of the provider - connection type (class implementing ) or one of the following tokens: - -
    -
  • sqlserver, mssql, microsoft or msde - SQL Server Data Provider
  • -
  • oledb - OLEDB Data Provider
  • -
  • odbc - ODBC Data Provider
  • -
-
- -
- - - Gets or sets the name of the connection string (as specified in <connectionStrings> configuration section. - - - - - - Gets or sets the connection string. When provided, it overrides the values - specified in DBHost, DBUserName, DBPassword, DBDatabase. - - - - - - Gets or sets the connection string using for installation and uninstallation. If not provided, regular ConnectionString is being used. - - - - - - Gets the installation DDL commands. - - - - - - Gets the uninstallation DDL commands. - - - - - - Gets or sets a value indicating whether to keep the - database connection open between the log events. - - - - - - Obsolete - value will be ignored! The logging code always runs outside of transaction. - - Gets or sets a value indicating whether to use database transactions. - Some data providers require this. - - - - This option was removed in NLog 4.0 because the logging code always runs outside of transaction. - This ensures that the log gets written to the database if you rollback the main transaction because of an error and want to log the error. - - - - - Gets or sets the database host name. If the ConnectionString is not provided - this value will be used to construct the "Server=" part of the - connection string. - - - - - - Gets or sets the database user name. If the ConnectionString is not provided - this value will be used to construct the "User ID=" part of the - connection string. - - - - - - Gets or sets the database password. If the ConnectionString is not provided - this value will be used to construct the "Password=" part of the - connection string. - - - - - - Gets or sets the database name. If the ConnectionString is not provided - this value will be used to construct the "Database=" part of the - connection string. - - - - - - Gets or sets the text of the SQL command to be run on each log level. - - - Typically this is a SQL INSERT statement or a stored procedure call. - It should use the database-specific parameters (marked as @parameter - for SQL server or :parameter for Oracle, other data providers - have their own notation) and not the layout renderers, - because the latter is prone to SQL injection attacks. - The layout renderers should be specified as <parameter /> elements instead. - - - - - - Gets or sets the type of the SQL command to be run on each log level. - - - This specifies how the command text is interpreted, as "Text" (default) or as "StoredProcedure". - When using the value StoredProcedure, the commandText-property would - normally be the name of the stored procedure. TableDirect method is not supported in this context. - - - - - - Gets the collection of parameters. Each parameter contains a mapping - between NLog layout and a database named or positional parameter. - - - - - - A descriptor for an archive created with the DateAndSequence numbering mode. - - - - - Determines whether produces the same string as the current instance's date once formatted with the current instance's date format. - - The date to compare the current object's date to. - True if the formatted dates are equal, otherwise False. - - - - Initializes a new instance of the class. - - - - - The full name of the archive file. - - - - - The parsed date contained in the file name. - - - - - The parsed sequence number contained in the file name. - - - - - Writes log messages to the attached managed debugger. - - -

- To set up the target in the configuration file, - use the following syntax: -

- -

- This assumes just one target and a single rule. More configuration - options are described here. -

-

- To set up the log target programmatically use code like this: -

- -
-
- - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - - - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - Name of the target. - - - - Initializes the target. - - - - - Closes the target and releases any unmanaged resources. - - - - - Writes the specified logging event to the attached debugger. - - The logging event. - - - - Mock target - useful for testing. - - Documentation on NLog Wiki - -

- To set up the target in the configuration file, - use the following syntax: -

- -

- This assumes just one target and a single rule. More configuration - options are described here. -

-

- To set up the log target programmatically use code like this: -

- -
-
- - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - - - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - Name of the target. - - - - Increases the number of messages. - - The logging event. - - - - Gets the number of times this target has been called. - - - - - - Gets the last message rendered by this target. - - - - - - Default class for serialization of values to JSON format. - - - - - Interface for serialization of values, maybe even objects to JSON format. - Useful for wrappers for existing serializers. - - - - - Returns a serialization of an object - into JSON format. - - The object to serialize to JSON. - Serialized value. - - - - Returns a serialization of an object - int JSON format. - - The object to serialize to JSON. - Serialized value. - - - - Returns a serialization of an object - int JSON format. - - The object to serialize to JSON. - Should non-ascii characters be encoded - The objects in path. - The current depth (level) of recursion. - - Serialized value. - - - - - Converts object value into JSON escaped string - - Object value - Object TypeCode - Should non-ascii characters be encoded - Should string be JSON encoded with quotes - Object value converted to JSON escaped string - - - - Checks input string if it needs JSON escaping, and makes necessary conversion - - Input string - Should non-ascii characters be encoded - JSON escaped string - - - - Singleton instance of the serializer. - - - - - Writes log message to the Event Log. - - Documentation on NLog Wiki - -

- To set up the target in the configuration file, - use the following syntax: -

- -

- This assumes just one target and a single rule. More configuration - options are described here. -

-

- To set up the log target programmatically use code like this: -

- -
-
- - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - Name of the target. - - - - Performs installation which requires administrative permissions. - - The installation context. - - - - Performs uninstallation which requires administrative permissions. - - The installation context. - - - - Determines whether the item is installed. - - The installation context. - - Value indicating whether the item is installed or null if it is not possible to determine. - - - - - Initializes the target. - - - - - Writes the specified logging event to the event log. - - The logging event. - - - - Get the entry type for logging the message. - - The logging event - for rendering the - - - - - Get the source, if and only if the source is fixed. - - null when not - Internal for unit tests - - - - Get the eventlog to write to. - - Event if the source needs to be rendered. - - - - - (re-)create a event source, if it isn't there. Works only with fixed sourcenames. - - sourcenaam. If source is not fixed (see , then pass null or emptystring. - always throw an Exception when there is an error - - - - Gets or sets the name of the machine on which Event Log service is running. - - - - - - Gets or sets the layout that renders event ID. - - - - - - Gets or sets the layout that renders event Category. - - - - - - Optional entrytype. When not set, or when not convertable to then determined by - - - - - Gets or sets the value to be used as the event Source. - - - By default this is the friendly name of the current AppDomain. - - - - - - Gets or sets the name of the Event Log to write to. This can be System, Application or - any user-defined name. - - - - - - Gets or sets the message length limit to write to the Event Log. - - MaxMessageLength cannot be zero or negative - - - - Gets or sets the maximum Event log size in kilobytes. - - If null, the value won't be set. - - Default is 512 Kilobytes as specified by Eventlog API - - MaxKilobytes cannot be less than 64 or greater than 4194240 or not a multiple of 64. If null, use the default value - - - - Gets or sets the action to take if the message is larger than the option. - - - - - - Action that should be taken if the message is greater than - the max message size allowed by the Event Log. - - - - - Truncate the message before writing to the Event Log. - - - - - Split the message and write multiple entries to the Event Log. - - - - - Discard of the message. It will not be written to the Event Log. - - - - - Modes of archiving files based on time. - - - - - Don't archive based on time. - - - - - AddToArchive every year. - - - - - AddToArchive every month. - - - - - AddToArchive daily. - - - - - AddToArchive every hour. - - - - - AddToArchive every minute. - - - - - AddToArchive every Sunday. - - - - - AddToArchive every Monday. - - - - - AddToArchive every Tuesday. - - - - - AddToArchive every Wednesday. - - - - - AddToArchive every Thursday. - - - - - AddToArchive every Friday. - - - - - AddToArchive every Saturday. - - - - - Type of filepath - - - - - Detect of relative or absolute - - - - - Relative path - - - - - Absolute path - - Best for performance - - - - Writes log messages to one or more files. - - Documentation on NLog Wiki - - - - Default clean up period of the initilized files. When a file exceeds the clean up period is removed from the list. - - Clean up period is defined in days. - - - - The maximum number of initialised files at any one time. Once this number is exceeded clean up procedures - are initiated to reduce the number of initialised files. - - - - - This value disables file archiving based on the size. - - - - - Holds the initialised files each given time by the instance. Against each file, the last write time is stored. - - Last write time is store in local time (no UTC). - - - - Factory used to create the file appenders in the instance. - - File appenders are stored in an instance of . - - - - List of the associated file appenders with the instance. - - - - - The number of initialised files at any one time. - - - - - The maximum number of archive files that should be kept. - - - - - It holds the file names of existing archives in order for the oldest archives to be removed when the list of - filenames becomes too long. - - - - - The filename as target - - - - - The archive file name as target - - - - - The date of the previous log event. - - - - - The file name of the previous log event. - - - - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - - - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - Name of the target. - - - - Refresh the ArchiveFilePatternToWatch option of the . - The log file must be watched for archiving when multiple processes are writing to the same - open file. - - - - - Removes records of initialized files that have not been - accessed in the last two days. - - - Files are marked 'initialized' for the purpose of writing footers when the logging finishes. - - - - - Removes records of initialized files that have not been - accessed after the specified date. - - The cleanup threshold. - - Files are marked 'initialized' for the purpose of writing footers when the logging finishes. - - - - - Flushes all pending file operations. - - The asynchronous continuation. - - The timeout parameter is ignored, because file APIs don't provide - the needed functionality. - - - - - Returns the suitable appender factory ( ) to be used to generate the file - appenders associated with the instance. - - The type of the file appender factory returned depends on the values of various properties. - - suitable for this instance. - - - - Initializes file logging by creating data structures that - enable efficient multi-file logging. - - - - - Closes the file(s) opened for writing. - - - - - Can be used if has been enabled. - - - - - Can be used if has been enabled. - - - - - Can be used if has been enabled. - - - - - Writes the specified logging event to a file specified in the FileName - parameter. - - The logging event. - - - - Get full filename (=absolute) and cleaned if needed. - - - - - - - NOTE! Will soon be marked obsolete. Instead override Write(IList{AsyncLogEventInfo} logEvents) - - Writes an array of logging events to the log target. By default it iterates on all - events and passes them to "Write" method. Inheriting classes can use this method to - optimize batch writes. - - Logging events to be written out. - - - - Writes the specified array of logging events to a file specified in the FileName - parameter. - - An array of objects. - - This function makes use of the fact that the events are batched by sorting - the requests by filename. This optimizes the number of open/close calls - and can help improve performance. - - - - - Returns estimated size for memory stream, based on events count and first event size in bytes. - - Count of events - Bytes count of first event - - - - Formats the log event for write. - - The log event to be formatted. - A string representation of the log event. - - - - Gets the bytes to be written to the file. - - Log event. - Array of bytes that are ready to be written. - - - - Modifies the specified byte array before it gets sent to a file. - - The byte array. - The modified byte array. The function can do the modification in-place. - - - - Gets the bytes to be written to the file. - - The log event to be formatted. - to help format log event. - Optional temporary char-array to help format log event. - Destination for the encoded result. - - - - Formats the log event for write. - - The log event to be formatted. - Initially empty for the result. - - - - Modifies the specified byte array before it gets sent to a file. - - The LogEvent being written - The byte array. - - - - Replaces the numeric pattern i.e. {#} in a file name with the parameter value. - - File name which contains the numeric pattern. - Value which will replace the numeric pattern. - File name with the value of in the position of the numeric pattern. - - - - Determines if the file name as contains a numeric pattern i.e. {#} in it. - - Example: - trace{#}.log Contains the numeric pattern. - trace{###}.log Contains the numeric pattern. - trace{#X#}.log Contains the numeric pattern (See remarks). - trace.log Does not contain the pattern. - - Occasionally, this method can identify the existence of the {#} pattern incorrectly. - File name to be checked. - when the pattern is found; otherwise. - - - - Archives the using a rolling style numbering (the most recent is always #0 then - #1, ..., #N. When the number of archive files exceed the obsolete archives - are deleted. - - - This method is called recursively. This is the reason the is required. - - File name to be archived. - File name template which contains the numeric pattern to be replaced. - Value which will replace the numeric pattern. - - - - Archives the using a sequence style numbering. The most recent archive has the - highest number. When the number of archive files exceed the obsolete - archives are deleted. - - File name to be archived. - File name template which contains the numeric pattern to be replaced. - - - - Archives fileName to archiveFileName. - - File name to be archived. - Name of the archive file. - - - - - Archives the using a date and sequence style numbering. Archives will be stamped - with the prior period (Year, Month, Day) datetime. The most recent archive has the highest number (in - combination with the date). - - - When the number of archive files exceed the obsolete archives are deleted. - - - File name to be archived. - File name template which contains the numeric pattern to be replaced. - Log event that the instance is currently processing. - - - - Deletes files among a given list, and stops as soon as the remaining files are fewer than the setting. - - List of the file archives. - - Items are deleted in the same order as in . No file is deleted if property is zero. - - - - - Searches a given directory for archives that comply with the current archive pattern. - - An enumeration of archive infos, ordered by their file creation date. - - - - Parse filename with date and sequence pattern - - - dateformat for archive - - the found pattern. When failed, then default - the found pattern. When failed, then default - - - - - Gets the collection of files in the specified directory which they match the . - - Directory to searched. - Pattern which the files will be searched against. - List of files matching the pattern. - - - - Replaces the string-based pattern i.e. {#} in a file name with the value passed in parameter. - - File name which contains the string-based pattern. - Value which will replace the string-based pattern. - - File name with the value of in the position of the string-based pattern. - - - - - Archives the using a date style numbering. Archives will be stamped with the - prior period (Year, Month, Day, Hour, Minute) datetime. When the number of archive files exceed the obsolete archives are deleted. - - File name to be archived. - File name template which contains the numeric pattern to be replaced. - Log event that the instance is currently processing. - - - - Deletes archive files in reverse chronological order until only the - MaxArchiveFiles number of archive files remain. - - The pattern that archive filenames will match - - - - Gets the correct formatting to be used based on the value of for converting values which will be inserting into file - names during archiving. - - This value will be computed only when a empty value or is passed into - - Date format to used irrespectively of value. - Formatting for dates. - - - - Calculate the DateTime of the requested day of the week. - - The DateTime of the previous log event. - The next occuring day of the week to return a DateTime for. - The DateTime of the next occuring dayOfWeek. - For example: if previousLogEventTimestamp is Thursday 2017-03-02 and dayOfWeek is Sunday, this will return - Sunday 2017-03-05. If dayOfWeek is Thursday, this will return *next* Thursday 2017-03-09. - - - - Invokes the archiving process after determining when and which type of archiving is required. - - File name to be checked and archived. - Log event that the instance is currently processing. - - - - Gets the pattern that archive files will match - - Filename of the log file - Log event that the instance is currently processing. - A string with a pattern that will match the archive filenames - - - - Determine if old archive files should be deleted. - - when old archives should be deleted; otherwise. - - - - Archives the file if it should be archived. - - The file name to check for. - Log event that the instance is currently processing. - The size in bytes of the next chunk of data to be written in the file. - - - - Indicates if the automatic archiving process should be executed. - - File name to be written. - Log event that the instance is currently processing. - The size in bytes of the next chunk of data to be written in the file. - Filename to archive. If null, then nothing to archive. - - - - Returns the correct filename to archive - - - - - - Gets the file name for archiving, or null if archiving should not occur based on file size. - - File name to be written. - The size in bytes of the next chunk of data to be written in the file. - Filename to archive. If null, then nothing to archive. - - - - Returns the file name for archiving, or null if archiving should not occur based on date/time. - - File name to be written. - Log event that the instance is currently processing. - Filename to archive. If null, then nothing to archive. - - - - Truncates the input-time, so comparison of low resolution times (like dates) are not affected by ticks - - High resolution Time - Time Resolution Level - Truncated Low Resolution Time - - - - Evaluates which parts of a file should be written (header, content, footer) based on various properties of - instance and writes them. - - File name to be written. - Log event that the instance is currently processing. - Raw sequence of to be written into the content part of the file. - Indicates that only content section should be written in the file. - - - - Initialise a file to be used by the instance. Based on the number of initialised - files and the values of various instance properties clean up and/or archiving processes can be invoked. - - File name to be written. - Log event that the instance is currently processing. - Indicates that only content section should be written in the file. - when file header should be written; otherwise. - - - - Writes the file footer and finalizes the file in instance internal structures. - - File name to close. - Indicates if the file is being finalized for archiving. - - - - Writes the footer information to a file. - - The file path to write to. - - - - Invokes the archiving and clean up of older archive file based on the values of and properties respectively. - - File name to be written. - Log event that the instance is currently processing. - - - - Creates the file specified in and writes the file content in each entirety i.e. - Header, Content and Footer. - - The name of the file to be written. - Sequence of to be written in the content section of the file. - First attempt to write? - This method is used when the content of the log file is re-written on every write. - - - - Writes the header information to a file. - - File appender associated with the file. - - - - The sequence of to be written in a file after applying any formating and any - transformations required from the . - - The layout used to render output message. - Sequence of to be written. - Usually it is used to render the header and hooter of the files. - - - - Gets or sets the name of the file to write to. - - - This FileName string is a layout which may include instances of layout renderers. - This lets you use a single target to write to multiple files. - - - The following value makes NLog write logging events to files based on the log level in the directory where - the application runs. - ${basedir}/${level}.log - All Debug messages will go to Debug.log, all Info messages will go to Info.log and so on. - You can combine as many of the layout renderers as you want to produce an arbitrary log file name. - - - - - - Cleanup invalid values in a filename, e.g. slashes in a filename. If set to true, this can impact the performance of massive writes. - If set to false, nothing gets written when the filename is wrong. - - - - - Is the an absolute or relative path? - - - - - Gets or sets a value indicating whether to create directories if they do not exist. - - - Setting this to false may improve performance a bit, but you'll receive an error - when attempting to write to a directory that's not present. - - - - - - Gets or sets a value indicating whether to delete old log file on startup. - - - This option works only when the "FileName" parameter denotes a single file. - - - - - - Gets or sets a value indicating whether to replace file contents on each write instead of appending log message at the end. - - - - - - Gets or sets a value indicating whether to keep log file open instead of opening and closing it on each logging event. - - - Setting this property to True helps improve performance. - - - - - - Gets or sets the maximum number of log filenames that should be stored as existing. - - - The bigger this number is the longer it will take to write each log record. The smaller the number is - the higher the chance that the clean function will be run when no new files have been opened. - - [Warning] This method will be renamed to correct text casing i.e. MaxLogFilenames in NLog 5. - - - - - - Gets or sets a value indicating whether to enable log file(s) to be deleted. - - - - - - Gets or sets the file attributes (Windows only). - - - - - - Should we capture the last write time of a file? - - - - - Gets or sets the line ending mode. - - - - - - Gets or sets a value indicating whether to automatically flush the file buffers after each log message. - - - - - - Gets or sets the number of files to be kept open. Setting this to a higher value may improve performance - in a situation where a single File target is writing to many files - (such as splitting by level or by logger). - - - The files are managed on a LRU (least recently used) basis, which flushes - the files that have not been used for the longest period of time should the - cache become full. As a rule of thumb, you shouldn't set this parameter to - a very high value. A number like 10-15 shouldn't be exceeded, because you'd - be keeping a large number of files open which consumes system resources. - - - - - - Gets or sets the maximum number of seconds that files are kept open. If this number is negative the files are - not automatically closed after a period of inactivity. - - - - - - Gets or sets the log file buffer size in bytes. - - - - - - Gets or sets the file encoding. - - - - - - Gets or sets whether or not this target should just discard all data that its asked to write. - Mostly used for when testing NLog Stack except final write - - - - - Gets or sets a value indicating whether concurrent writes to the log file by multiple processes on the same host. - - - This makes multi-process logging possible. NLog uses a special technique - that lets it keep the files open for writing. - - - - - - Gets or sets a value indicating whether concurrent writes to the log file by multiple processes on different network hosts. - - - This effectively prevents files from being kept open. - - - - - - Gets or sets the number of times the write is appended on the file before NLog - discards the log message. - - - - - - Gets or sets the delay in milliseconds to wait before attempting to write to the file again. - - - The actual delay is a random value between 0 and the value specified - in this parameter. On each failed attempt the delay base is doubled - up to times. - - - Assuming that ConcurrentWriteAttemptDelay is 10 the time to wait will be:

- a random value between 0 and 10 milliseconds - 1st attempt
- a random value between 0 and 20 milliseconds - 2nd attempt
- a random value between 0 and 40 milliseconds - 3rd attempt
- a random value between 0 and 80 milliseconds - 4th attempt
- ...

- and so on. - - - - -

- Gets or sets a value indicating whether to archive old log file on startup. - - - This option works only when the "FileName" parameter denotes a single file. - After archiving the old file, the current log file will be empty. - - -
- - - Gets or sets a value specifying the date format to use when archiving files. - - - This option works only when the "ArchiveNumbering" parameter is set either to Date or DateAndSequence. - - - - - - Gets or sets the size in bytes above which log files will be automatically archived. - - Warning: combining this with isn't supported. We cannot create multiple archive files, if they should have the same name. - Choose: - - - Caution: Enabling this option can considerably slow down your file - logging in multi-process scenarios. If only one process is going to - be writing to the file, consider setting ConcurrentWrites - to false for maximum performance. - - - - - - Gets or sets a value indicating whether to automatically archive log files every time the specified time passes. - - - Files are moved to the archive as part of the write operation if the current period of time changes. For example - if the current hour changes from 10 to 11, the first write that will occur - on or after 11:00 will trigger the archiving. -

- Caution: Enabling this option can considerably slow down your file - logging in multi-process scenarios. If only one process is going to - be writing to the file, consider setting ConcurrentWrites - to false for maximum performance. -

-
- -
- - - Is the an absolute or relative path? - - - - - Gets or sets the name of the file to be used for an archive. - - - It may contain a special placeholder {#####} - that will be replaced with a sequence of numbers depending on - the archiving strategy. The number of hash characters used determines - the number of numerical digits to be used for numbering files. - - - - - - Gets or sets the maximum number of archive files that should be kept. - - - - - - Gets or sets the way file archives are numbered. - - - - - - Used to compress log files during archiving. - This may be used to provide your own implementation of a zip file compressor, - on platforms other than .Net4.5. - Defaults to ZipArchiveFileCompressor on .Net4.5 and to null otherwise. - - - - - Gets or sets a value indicating whether to compress archive files into the zip archive format. - - - - - - Gets or set a value indicating whether a managed file stream is forced, instead of using the native implementation. - - - - - Gets or sets a value indicationg whether file creation calls should be synchronized by a system global mutex. - - - - - Gets or sets a value indicating whether the footer should be written only when the file is archived. - - - - - Gets the characters that are appended after each line. - - - - - Creates an instance of class. - - The file target instance whose files to archive. - Maximum number of archive files to be kept. - - - - Adds the files in the specified path to the archive file queue. - - The folder where the archive files are stored. - - - - Adds a file into archive. - - File name of the archive - Original file name - Create a directory, if it does not exist - if the file has been moved successfully; otherwise. - - - - Archives the file, either by copying it to a new file system location or by compressing it, and add the file name into the list of archives. - - Target file name. - Original file name. - Create a directory, if it does not exist. - - - - Remove old archive files when the files on the queue are more than the . - - - - - Gets the file name for the next archive file by appending a number to the provided - "base"-filename. - - Example: - Original Filename trace.log - Target Filename trace.15.log - - Original file name. - File name suitable for archiving - - - - Gets or sets the maximum number of archive files that should be kept. - - - - - Characters determining the start of the . - - - - - Characters determining the end of the . - - - - - Replace the pattern with the specified String. - - - - - - - File name which is used as template for matching and replacements. - It is expected to contain a pattern to match. - - - - - The begging position of the - within the . -1 is returned - when no pattern can be found. - - - - - The ending position of the - within the . -1 is returned - when no pattern can be found. - - - - - may be configured to compress archived files in a custom way - by setting before logging your first event. - - - - - Create archiveFileName by compressing fileName. - - Absolute path to the log file to compress. - Absolute path to the compressed archive file to create. - - - - Line ending mode. - - - - - Insert platform-dependent end-of-line sequence after each line. - - - - - Insert CR LF sequence (ASCII 13, ASCII 10) after each line. - - - - - Insert CR character (ASCII 13) after each line. - - - - - Insert LF character (ASCII 10) after each line. - - - - - Do not insert any line ending. - - - - - Initializes a new instance of . - - The mode name. - The new line characters to be used. - - - - Returns the that corresponds to the supplied . - - - The textual representation of the line ending mode, such as CRLF, LF, Default etc. - Name is not case sensitive. - - The value, that corresponds to the . - There is no line ending mode with the specified name. - - - - Compares two objects and returns a - value indicating whether the first one is equal to the second one. - - The first level. - The second level. - The value of mode1.NewLineCharacters == mode2.NewLineCharacters. - - - - Compares two objects and returns a - value indicating whether the first one is not equal to the second one. - - The first mode - The second mode - The value of mode1.NewLineCharacters != mode2.NewLineCharacters. - - - - Returns a string representation of the log level. - - Log level name. - - - - Returns a hash code for this instance. - - - A hash code for this instance, suitable for use in hashing algorithms - and data structures like a hash table. - - - - - Determines whether the specified is - equal to this instance. - - The to compare with - this instance. - - Value of true if the specified - is equal to this instance; otherwise, false. - - - The parameter is null. - - - - - Gets the name of the LineEndingMode instance. - - - - - Gets the new line characters (value) of the LineEndingMode instance. - - - - - Provides a type converter to convert objects to and from other representations. - - - - - Returns whether this converter can convert an object of the given type to the type of this converter, using the specified context. - - - true if this converter can perform the conversion; otherwise, false. - - An that provides a format context. A that represents the type you want to convert from. - - - - Converts the given object to the type of this converter, using the specified context and culture information. - - - An that represents the converted value. - - An that provides a format context. The to use as the current culture. The to convert. The conversion cannot be performed. - - - - Sends log messages to a NLog Receiver Service (using WCF or Web Services). - - Documentation on NLog Wiki - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - Name of the target. - - - - Called when log events are being sent (test hook). - - The events. - The async continuations. - True if events should be sent, false to stop processing them. - - - - Writes logging event to the log target. Must be overridden in inheriting - classes. - - Logging event to be written out. - - - - NOTE! Will soon be marked obsolete. Instead override Write(IList{AsyncLogEventInfo} logEvents) - - Writes an array of logging events to the log target. By default it iterates on all - events and passes them to "Write" method. Inheriting classes can use this method to - optimize batch writes. - - Logging events to be written out. - - - - Writes an array of logging events to the log target. By default it iterates on all - events and passes them to "Append" method. Inheriting classes can use this method to - optimize batch writes. - - Logging events to be written out. - - - - Flush any pending log messages asynchronously (in case of asynchronous targets). - - The asynchronous continuation. - - - - Creating a new instance of WcfLogReceiverClient - - Inheritors can override this method and provide their own - service configuration - binding and endpoint address - - This method marked as obsolete before NLog 4.3.11 and it may be removed in a future release. - - - - Creating a new instance of IWcfLogReceiverClient - - Inheritors can override this method and provide their own - service configuration - binding and endpoint address - - - virtual is used by endusers - - - - Gets or sets the endpoint address. - - The endpoint address. - - - - - Gets or sets the name of the endpoint configuration in WCF configuration file. - - The name of the endpoint configuration. - - - - - Gets or sets a value indicating whether to use binary message encoding. - - - - - - Gets or sets a value indicating whether to use a WCF service contract that is one way (fire and forget) or two way (request-reply) - - - - - - Gets or sets the client ID. - - The client ID. - - - - - Gets the list of parameters. - - The parameters. - - - - - Gets or sets a value indicating whether to include per-event properties in the payload sent to the server. - - - - - - Sends log messages by email using SMTP protocol. - - Documentation on NLog Wiki - -

- To set up the target in the configuration file, - use the following syntax: -

- -

- This assumes just one target and a single rule. More configuration - options are described here. -

-

- To set up the log target programmatically use code like this: -

- -

- Mail target works best when used with BufferingWrapper target - which lets you send multiple log messages in single mail -

-

- To set up the buffered mail target in the configuration file, - use the following syntax: -

- -

- To set up the buffered mail target programmatically use code like this: -

- -
-
- - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - - - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - Name of the target. - - - - Renders the logging event message and adds it to the internal ArrayList of log messages. - - The logging event. - - - - NOTE! Will soon be marked obsolete. Instead override Write(IList{AsyncLogEventInfo} logEvents) - - Writes an array of logging events to the log target. By default it iterates on all - events and passes them to "Write" method. Inheriting classes can use this method to - optimize batch writes. - - Logging events to be written out. - - - - Renders an array logging events. - - Array of logging events. - - - - Initializes the target. Can be used by inheriting classes - to initialize logging. - - - - - Create mail and send with SMTP - - event printed in the body of the event - - - - Create buffer for body - - all events - first event for header - last event for footer - - - - - Set properties of - - last event for username/password - client to set properties on - Configure not at , as the properties could have layout renderers. - - - - Handle if it is a virtual directory. - - - - - - - Create key for grouping. Needed for multiple events in one mailmessage - - event for rendering layouts - string to group on - - - - Append rendered layout to the stringbuilder - - append to this - event for rendering - append if not null - - - - Create the mailmessage with the addresses, properties and body. - - - - - Render and add the addresses to - - Addresses appended to this list - layout with addresses, ; separated - event for rendering the - added a address? - - - - Gets the mailSettings/smtp configuration from app.config in cases when we need those configuration. - E.g when UseSystemNetMailSettings is enabled and we need to read the From attribute from system.net/mailSettings/smtp - - Internal for mocking - - - - Gets or sets sender's email address (e.g. joe@domain.com). - - - - - - Gets or sets recipients' email addresses separated by semicolons (e.g. john@domain.com;jane@domain.com). - - - - - - Gets or sets CC email addresses separated by semicolons (e.g. john@domain.com;jane@domain.com). - - - - - - Gets or sets BCC email addresses separated by semicolons (e.g. john@domain.com;jane@domain.com). - - - - - - Gets or sets a value indicating whether to add new lines between log entries. - - A value of true if new lines should be added; otherwise, false. - - - - - Gets or sets the mail subject. - - - - - - Gets or sets mail message body (repeated for each log message send in one mail). - - Alias for the Layout property. - - - - - Gets or sets encoding to be used for sending e-mail. - - - - - - Gets or sets a value indicating whether to send message as HTML instead of plain text. - - - - - - Gets or sets SMTP Server to be used for sending. - - - - - - Gets or sets SMTP Authentication mode. - - - - - - Gets or sets the username used to connect to SMTP server (used when SmtpAuthentication is set to "basic"). - - - - - - Gets or sets the password used to authenticate against SMTP server (used when SmtpAuthentication is set to "basic"). - - - - - - Gets or sets a value indicating whether SSL (secure sockets layer) should be used when communicating with SMTP server. - - . - - - - Gets or sets the port number that SMTP Server is listening on. - - - - - - Gets or sets a value indicating whether the default Settings from System.Net.MailSettings should be used. - - - - - - Specifies how outgoing email messages will be handled. - - - - - - Gets or sets the folder where applications save mail messages to be processed by the local SMTP server. - - - - - - Gets or sets the priority used for sending mails. - - - - - Gets or sets a value indicating whether NewLine characters in the body should be replaced with
tags. -
- Only happens when is set to true. -
- - - Gets or sets a value indicating the SMTP client timeout. - - Warning: zero is not infinit waiting - - - - Writes log messages to an ArrayList in memory for programmatic retrieval. - - Documentation on NLog Wiki - -

- To set up the target in the configuration file, - use the following syntax: -

- -

- This assumes just one target and a single rule. More configuration - options are described here. -

-

- To set up the log target programmatically use code like this: -

- -
-
- - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - - - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - Name of the target. - - - - Renders the logging event message and adds it to the internal ArrayList of log messages. - - The logging event. - - - - Gets the list of logs gathered in the . - - - - - A parameter to MethodCall. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - The layout to use for parameter value. - - - - Initializes a new instance of the class. - - Name of the parameter. - The layout. - - - - Initializes a new instance of the class. - - The name of the parameter. - The layout. - The type of the parameter. - - - - Gets or sets the name of the parameter. - - - - - - Gets or sets the type of the parameter. Obsolete alias for - - - - - - Gets or sets the type of the parameter. - - - - - - Gets or sets the layout that should be use to calculate the value for the parameter. - - - - - - Calls the specified static method on each log message and passes contextual parameters to it. - - Documentation on NLog Wiki - -

- To set up the target in the configuration file, - use the following syntax: -

- -

- This assumes just one target and a single rule. More configuration - options are described here. -

-

- To set up the log target programmatically use code like this: -

- -
-
- - - The base class for all targets which call methods (local or remote). - Manages parameters and type coercion. - - - - - Initializes a new instance of the class. - - - - - Prepares an array of parameters to be passed based on the logging event and calls DoInvoke(). - - - The logging event. - - - - - Calls the target method. Must be implemented in concrete classes. - - Method call parameters. - The continuation. - - - - Calls the target method. Must be implemented in concrete classes. - - Method call parameters. - - - - Gets the array of parameters to be passed. - - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - Name of the target. - - - - Initializes the target. - - - - - Calls the specified Method. - - Method parameters. - - - - Gets or sets the class name. - - - - - - Gets or sets the method name. The method must be public and static. - - Use the AssemblyQualifiedName , https://msdn.microsoft.com/en-us/library/system.type.assemblyqualifiedname(v=vs.110).aspx - e.g. - - - - - - The action to be taken when there are more connections then the max. - - - - - Just allow it. - - - - - Discard the connection item. - - - - - Block until there's more room in the queue. - - - - - Action that should be taken if the message overflows. - - - - - Report an error. - - - - - Split the message into smaller pieces. - - - - - Discard the entire message. - - - - - Represents a parameter to a NLogViewer target. - - - - - Initializes a new instance of the class. - - - - - Gets or sets viewer parameter name. - - - - - - Gets or sets the layout that should be use to calcuate the value for the parameter. - - - - - - Discards log messages. Used mainly for debugging and benchmarking. - - Documentation on NLog Wiki - -

- To set up the target in the configuration file, - use the following syntax: -

- -

- This assumes just one target and a single rule. More configuration - options are described here. -

-

- To set up the log target programmatically use code like this: -

- -
-
- - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - - - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - - - - - Does nothing. Optionally it calculates the layout text but - discards the results. - - The logging event. - - - - Gets or sets a value indicating whether to perform layout calculation. - - - - - - Outputs log messages through the OutputDebugString() Win32 API. - - Documentation on NLog Wiki - -

- To set up the target in the configuration file, - use the following syntax: -

- -

- This assumes just one target and a single rule. More configuration - options are described here. -

-

- To set up the log target programmatically use code like this: -

- -
-
- - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - - - - Initializes a new instance of the class. - - - The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} - - Name of the target. - - - - Outputs the rendered logging event through the OutputDebugString() Win32 API. - - The logging event. - - - - Increments specified performance counter on each write. - - Documentation on NLog Wiki - -

- To set up the target in the configuration file, - use the following syntax: -

- -

- This assumes just one target and a single rule. More configuration - options are described here. -

-

- To set up the log target programmatically use code like this: -

- -
- - TODO: - 1. Unable to create a category allowing multiple counter instances (.Net 2.0 API only, probably) - 2. Is there any way of adding new counters without deleting the whole category? - 3. There should be some mechanism of resetting the counter (e.g every day starts from 0), or auto-switching to - another counter instance (with dynamic creation of new instance). This could be done with layouts. - -
- - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - Name of the target. - - - - Performs installation which requires administrative permissions. - - The installation context. - - - - Performs uninstallation which requires administrative permissions. - - The installation context. - - - - Determines whether the item is installed. - - The installation context. - - Value indicating whether the item is installed or null if it is not possible to determine. - - - - - Increments the configured performance counter. - - Log event. - - - - Closes the target and releases any unmanaged resources. - - - - - Ensures that the performance counter has been initialized. - - True if the performance counter is operational, false otherwise. - - - - Gets or sets a value indicating whether performance counter should be automatically created. - - - - - - Gets or sets the name of the performance counter category. - - - - - - Gets or sets the name of the performance counter. - - - - - - Gets or sets the performance counter instance name. - - - - - - Gets or sets the counter help text. - - - - - - Gets or sets the performance counter type. - - - - - - The value by which to increment the counter. - - - - - - SMTP authentication modes. - - - - - No authentication. - - - - - Basic - username and password. - - - - - NTLM Authentication. - - - - - Marks class as a logging target and assigns a name to it. - - This attribute is not required when registering the target in the API. - - - - Initializes a new instance of the class. - - Name of the target. - - - - Gets or sets a value indicating whether to the target is a wrapper target (used to generate the target summary documentation page). - - - - - Gets or sets a value indicating whether to the target is a compound target (used to generate the target summary documentation page). - - Sends log messages through System.Diagnostics.Trace. @@ -22890,9 +27614,24 @@ + + + Always use independent of + + + + + + Forward to (Instead of ) + + + Trace.Fail can have special side-effects, and give fatal exceptions, message dialogs or Environment.FailFast + + + - Initializes a new instance of the class. + Initializes a new instance of the class. The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} @@ -22900,7 +27639,7 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} @@ -22910,9 +27649,15 @@ Writes the specified logging event to the facility. - If the log level is greater than or equal to it uses the - method, otherwise it uses - method. + + Redirects the log message depending on and . + When is false: + - writes to + - writes to + - writes to + - writes to + - writes to + - writes to The logging event. @@ -22951,6 +27696,41 @@ Do an HTTP POST of an XML document. + + + Web Service Proxy Configuration Type + + + + + Default proxy configuration from app.config (System.Net.WebRequest.DefaultWebProxy) + + + Example of how to configure default proxy using app.config + + <system.net> + <defaultProxy enabled = "true" useDefaultCredentials = "true" > + <proxy usesystemdefault = "True" /> + </defaultProxy> + </system.net> + + + + + + Automatic use of proxy with authentication (cached) + + + + + Disables use of proxy (fast) + + + + + Custom proxy address (cached) + + Calls the specified web service on each log message. @@ -22985,15 +27765,114 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the target + + + Gets or sets the web service URL. + + + + + + Gets or sets the value of the User-agent HTTP header. + + + + + + Gets or sets the Web service method name. Only used with Soap. + + + + + + Gets or sets the Web service namespace. Only used with Soap. + + + + + + Gets or sets the protocol to be used when calling web service. + + + + + + Gets or sets the proxy configuration when calling web service + + + + + + Gets or sets the custom proxy address, include port separated by a colon + + + + + + Should we include the BOM (Byte-order-mark) for UTF? Influences the property. + + This will only work for UTF-8. + + + + + + Gets or sets the encoding. + + + + + + Gets or sets a value whether escaping be done according to Rfc3986 (Supports Internationalized Resource Identifiers - IRIs) + + A value of true if Rfc3986; otherwise, false for legacy Rfc2396. + + + + + Gets or sets a value whether escaping be done according to the old NLog style (Very non-standard) + + A value of true if legacy encoding; otherwise, false for standard UTF8 encoding. + + + + + Gets or sets the name of the root XML element, + if POST of XML document chosen. + If so, this property must not be null. + (see and ). + + + + + + Gets or sets the (optional) root namespace of the XML document, + if POST of XML document chosen. + (see and ). + + + + + + Gets the array of parameters to be passed. + + + + + + Indicates whether to pre-authenticate the HttpWebRequest (Requires 'Authorization' in parameters) + + + Calls the target method. Must be implemented in concrete classes. @@ -23001,11 +27880,18 @@ Method call parameters. + + Calls the target DoInvoke method, and handles AsyncContinuation callback + + Method call parameters. + The continuation. + + Invokes the web service method. Parameters to be passed. - The continuation. + The logging event. @@ -23034,74 +27920,6 @@ - - - Gets or sets the web service URL. - - - - - - Gets or sets the Web service method name. Only used with Soap. - - - - - - Gets or sets the Web service namespace. Only used with Soap. - - - - - - Gets or sets the protocol to be used when calling web service. - - - - - - Should we include the BOM (Byte-order-mark) for UTF? Influences the property. - - This will only work for UTF-8. - - - - - Gets or sets the encoding. - - - - - - Gets or sets a value whether escaping be done according to Rfc3986 (Supports Internationalized Resource Identifiers - IRIs) - - A value of true if Rfc3986; otherwise, false for legacy Rfc2396. - - - - - Gets or sets a value whether escaping be done according to the old NLog style (Very non-standard) - - A value of true if legacy encoding; otherwise, false for standard UTF8 encoding. - - - - - Gets or sets the name of the root XML element, - if POST of XML document chosen. - If so, this property must not be null. - (see and ). - - - - - - Gets or sets the (optional) root namespace of the XML document, - if POST of XML document chosen. - (see and ). - - - base class for POST formatters, that @@ -23115,7 +27933,7 @@ Win32 file attributes. - For more information see http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/fs/createfile.asp. + For more information see https://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/fs/createfile.asp. @@ -23211,10 +28029,15 @@ Request limit. The overflow action. + + + Gets the number of requests currently in the queue. + + Enqueues another item. If the queue is overflown the appropriate - action is taken as specified by . + action is taken as specified by . The log event info. Queue was empty before enqueue @@ -23239,22 +28062,39 @@ Clears the queue. - + Gets or sets the request limit. - + Gets or sets the action to be taken when there's no more room in the queue and another request is enqueued. - + - Gets the number of requests currently in the queue. + Notifies about log event that was dropped when set to + + + Notifies when queue size is growing over + + + + + Raise event when queued element was dropped because of queue overflow + + Dropped queue item + + + + Raise event when RequestCount overflow + + current requests count + Provides asynchronous, buffered execution of target writes. @@ -23292,62 +28132,89 @@ - - - Base class for targets wrap other (single) targets. - - - - - Returns the text representation of the object. Used for diagnostics. - - A string that describes the target. - - - - Flush any pending log messages (in case of asynchronous targets). - - The asynchronous continuation. - - - - Writes logging event to the log target. Must be overridden in inheriting - classes. - - Logging event to be written out. - - - - Gets or sets the target that is wrapped by this target. - - - - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the target. The wrapped target. - Initializes a new instance of the class. + Initializes a new instance of the class. The wrapped target. - Initializes a new instance of the class. + Initializes a new instance of the class. The wrapped target. Maximum number of requests in the queue. The action to be taken when the queue overflows. + + + Gets or sets the number of log events that should be processed in a batch + by the lazy writer thread. + + + + + + Gets or sets the time in milliseconds to sleep between batches. (1 or less means trigger on new activity) + + + + + + Raise event when Target cannot store LogEvent. + Event arg contains lost LogEvents + + + + + Raises when event queue grow. + Queue can grow when was set to + + + + + Gets or sets the action to be taken when the lazy writer thread request queue count + exceeds the set limit. + + + + + + Gets or sets the limit on the number of requests in the lazy writer thread request queue. + + + + + + Gets or sets the limit of full s to write before yielding into + Performance is better when writing many small batches, than writing a single large batch + + + + + + Gets or sets whether to use the locking queue, instead of a lock-free concurrent queue + The locking queue is less concurrent when many logger threads, but reduces memory allocation + + + + + + Gets the queue of lazy writer thread requests. + + Schedules a flush of pending events in the queue (if any), followed by flushing the WrappedTarget. @@ -23399,44 +28266,6 @@ - - - Gets or sets the number of log events that should be processed in a batch - by the lazy writer thread. - - - - - - Gets or sets the time in milliseconds to sleep between batches. - - - - - - Gets or sets the action to be taken when the lazy writer thread request queue count - exceeds the set limit. - - - - - - Gets or sets the limit on the number of requests in the lazy writer thread request queue. - - - - - - Gets or sets the limit of full s to write before yielding into - Performance is better when writing many small batches, than writing a single large batch - - - - - - Gets the queue of lazy writer thread requests. - - The action to be taken when the queue overflows. @@ -23459,7 +28288,7 @@ - Causes a flush on a wrapped target if LogEvent statisfies the . + Causes a flush on a wrapped target if LogEvent satisfies the . If condition isn't set, flushes on each write. Documentation on NLog Wiki @@ -23468,17 +28297,38 @@ To set up the target in the configuration file, use the following syntax:

- +

The above examples assume just one target and a single rule. See below for a programmatic configuration that's equivalent to the above config file:

- +
+ + + Gets or sets the condition expression. Log events who meet this condition will cause + a flush on the wrapped target. + + + + + + Delay the flush until the LogEvent has been confirmed as written + + If not explicitly set, then disabled by default for and AsyncTaskTarget + + + + + + Only flush when LogEvent matches condition. Ignore explicit-flush, config-reload-flush and shutdown-flush + + + - Initializes a new instance of the class. + Initializes a new instance of the class. The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} @@ -23486,7 +28336,7 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The default value of the layout is: ${longdate}|${level:uppercase=true}|${logger}|${message} @@ -23496,7 +28346,7 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The wrapped target. @@ -23524,17 +28374,6 @@ Closes the target.
- - - Gets or sets the condition expression. Log events who meet this condition will cause - a flush on the wrapped target. - - - - - Delay the flush until the LogEvent has been confirmed as written - - A target that buffers log events and sends them in batches to the wrapped target. @@ -23543,59 +28382,45 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the target. The wrapped target. - Initializes a new instance of the class. + Initializes a new instance of the class. The wrapped target. - Initializes a new instance of the class. + Initializes a new instance of the class. The wrapped target. Size of the buffer. - Initializes a new instance of the class. + Initializes a new instance of the class. The wrapped target. Size of the buffer. The flush timeout. - + - Flushes pending events in the buffer (if any), followed by flushing the WrappedTarget. + Initializes a new instance of the class. - The asynchronous continuation. - - - - Initializes the target. - - - - - Closes the target by flushing pending events in the buffer (if any). - - - - - Adds the specified log event to the buffer and flushes - the buffer in case the buffer gets full. - - The log event. + The wrapped target. + Size of the buffer. + The flush timeout. + The action to take when the buffer overflows. @@ -23621,6 +28446,56 @@ + + + Gets or sets the action to take if the buffer overflows. + + + Setting to will replace the + oldest event with new events without sending events down to the wrapped target, and + setting to will flush the + entire buffer to the wrapped target. + + + + + + Flushes pending events in the buffer (if any), followed by flushing the WrappedTarget. + + The asynchronous continuation. + + + + Initializes the target. + + + + + Closes the target by flushing pending events in the buffer (if any). + + + + + Adds the specified log event to the buffer and flushes + the buffer in case the buffer gets full. + + The log event. + + + + The action to be taken when the buffer overflows. + + + + + Flush the content of the buffer. + + + + + Discard the oldest item. + + A base class for targets which wrap other (multiple) targets @@ -23629,10 +28504,15 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The targets. + + + Gets the collection of targets managed by this compound target. + + Returns the text representation of the object. Used for diagnostics. @@ -23651,9 +28531,52 @@ The asynchronous continuation. - + - Gets the collection of targets managed by this compound target. + Concurrent Asynchronous request queue based on + + + + + Initializes a new instance of the AsyncRequestQueue class. + + Request limit. + The overflow action. + + + + Gets the number of requests currently in the queue. + + + Only for debugging purposes + + + + + Enqueues another item. If the queue is overflown the appropriate + action is taken as specified by . + + The log event info. + Queue was empty before enqueue + + + + Dequeues a maximum of count items from the queue + and adds returns the list containing them. + + Maximum number of items to be dequeued (-1 means everything). + The array of log events. + + + + Dequeues into a preallocated array, instead of allocating a new one + + Maximum number of items to be dequeued + Preallocated list + + + + Clears the queue. @@ -23690,10 +28613,22 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The targets. + + + Gets or sets a value indicating whether to return to the first target after any successful write. + + + + + + + + + Forwards the log event to the sub-targets until one of them succeeds. @@ -23707,12 +28642,6 @@ stored in . - - - Gets or sets a value indicating whether to return to the first target after any successful write. - - - Filtering rule for . @@ -23763,12 +28692,12 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the target. The wrapped target. @@ -23776,11 +28705,27 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The wrapped target. The condition. + + + Gets or sets the condition expression. Log events who meet this condition will be forwarded + to the wrapped target. + + + + + + Gets or sets the filter. Log events who evaluates to will be discarded + + + + + + Checks the condition against the passed log event. @@ -23789,12 +28734,8 @@ Log event. - - - Gets or sets the condition expression. Log events who meet this condition will be forwarded - to the wrapped target. - - + + @@ -23804,62 +28745,22 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the target. The wrapped target. - Initializes a new instance of the class. + Initializes a new instance of the class. The wrapped target. - - - Initializes the impersonation context. - - - - - Closes the impersonation context. - - - - - Changes the security context, forwards the call to the .Write() - and switches the context back to original. - - The log event. - - - - NOTE! Will soon be marked obsolete. Instead override Write(IList{AsyncLogEventInfo} logEvents) - - Writes an array of logging events to the log target. By default it iterates on all - events and passes them to "Write" method. Inheriting classes can use this method to - optimize batch writes. - - Logging events to be written out. - - - - Changes the security context, forwards the call to the .Write() - and switches the context back to original. - - Log events. - - - - Flush any pending log messages (in case of asynchronous targets). - - The asynchronous continuation. - Gets or sets username to change context to. @@ -23902,6 +28803,46 @@ + + + Initializes the impersonation context. + + + + + Closes the impersonation context. + + + + + Changes the security context, forwards the call to the .Write() + and switches the context back to original. + + The log event. + + + + NOTE! Obsolete, instead override Write(IList{AsyncLogEventInfo} logEvents) + + Writes an array of logging events to the log target. By default it iterates on all + events and passes them to "Write" method. Inheriting classes can use this method to + optimize batch writes. + + Logging events to be written out. + + + + Changes the security context, forwards the call to the .Write() + and switches the context back to original. + + Log events. + + + + Flush any pending log messages (in case of asynchronous targets). + + The asynchronous continuation. + Helper class which reverts the given @@ -23910,7 +28851,7 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The windows impersonation context. @@ -23926,30 +28867,60 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. The name of the target. The wrapped target. - Initializes a new instance of the class. + Initializes a new instance of the class. The wrapped target. - Initializes a new instance of the class. + Initializes a new instance of the class. The wrapped target. Maximum number of messages written per interval. Interval in which the maximum number of messages can be written. + + + Gets or sets the maximum allowed number of messages written per . + + + Messages received after has been reached in the current will be discarded. + + + + + + Gets or sets the interval in which messages will be written up to the number of messages. + + + Messages received after has been reached in the current will be discarded. + + + + + + Gets the DateTime when the current will be reset. + + + + + + Gets the number of written in the current . + + + Initializes the target and resets the current Interval and . @@ -23963,30 +28934,42 @@ Log event to be written out. - + - Gets or sets the maximum allowed number of messages written per . - - - Messages received after has been reached in the current will be discarded. - - - - - Gets or sets the interval in which messages will be written up to the number of messages. - - - Messages received after has been reached in the current will be discarded. - - - - - Gets the DateTime when the current will be reset. + Arguments for events. - + + + + - Gets the number of written in the current . + Instance of that was dropped by + + + + + Raises by when + queue is full + and set to + By default queue doubles it size. + + + + + Contains items count and new queue size. + + Required queue size + Current queue size + + + + New queue size + + + + + Current requests count @@ -24035,24 +29018,44 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the target. The wrapped target. + + + Gets or sets the default filter to be applied when no specific rule matches. + + + + + + Gets the collection of filtering rules. The rules are processed top-down + and the first rule that matches determines the filtering condition to + be applied to log events. + + + + + + + + + - NOTE! Will soon be marked obsolete. Instead override Write(IList{AsyncLogEventInfo} logEvents) + NOTE! Obsolete, instead override Write(IList{AsyncLogEventInfo} logEvents) Writes an array of logging events to the log target. By default it iterates on all events and passes them to "Write" method. Inheriting classes can use this method to @@ -24069,19 +29072,12 @@ Array of log events to be post-filtered. - + - Gets or sets the default filter to be applied when no specific rule matches. + Evaluate all the rules to get the filtering condition - - - - - Gets the collection of filtering rules. The rules are processed top-down - and the first rule that matches determines the filtering condition to - be applied to log events. - - + + @@ -24106,19 +29102,19 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the target. The targets. - Initializes a new instance of the class. + Initializes a new instance of the class. The targets. @@ -24150,12 +29146,12 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the target. The wrapped target. @@ -24163,23 +29159,23 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The wrapped target. The repeat count. - - - Forwards the log message to the by calling the method times. - - The log event. - Gets or sets the number of times to repeat each log message. + + + Forwards the log message to the by calling the method times. + + The log event. + Retries in case of write error. @@ -24202,12 +29198,12 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the target. The wrapped target. @@ -24216,13 +29212,25 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. The wrapped target. The retry count. The retry delay milliseconds. - + + + Gets or sets the number of retries that should be attempted on the wrapped target in case of a failure. + + + + + + Gets or sets the time to wait between retries in milliseconds. + + + + Special SyncObject to allow closing down Target while busy retrying @@ -24236,8 +29244,6 @@ Writes the specified log event to the wrapped target in a thread-safe manner. - Uses instead of - to allow closing target while doing sleep and retry. The log event. @@ -24247,18 +29253,6 @@ The log event. - - - Gets or sets the number of retries that should be attempted on the wrapped target in case of a failure. - - - - - - Gets or sets the time to wait between retries in milliseconds. - - - Distributes log events to targets in a round-robin fashion. @@ -24282,22 +29276,28 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the target. The targets. - Initializes a new instance of the class. + Initializes a new instance of the class. The targets. + + + Ensures forwarding happens without holding lock + + + Forwards the write to one of the targets from @@ -24427,19 +29427,19 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the target. The targets. - Initializes a new instance of the class. + Initializes a new instance of the class. The targets. @@ -24451,7 +29451,7 @@ - NOTE! Will soon be marked obsolete. Instead override Write(IList{AsyncLogEventInfo} logEvents) + NOTE! Obsolete, instead override Write(IList{AsyncLogEventInfo} logEvents) Writes an array of logging events to the log target. By default it iterates on all events and passes them to "Write" method. Inheriting classes can use this method to @@ -24467,6 +29467,36 @@ Logging events to be written out. + + + Base class for targets wrap other (single) targets. + + + + + Gets or sets the target that is wrapped by this target. + + + + + + Returns the text representation of the object. Used for diagnostics. + + A string that describes the target. + + + + Flush any pending log messages (in case of asynchronous targets). + + The asynchronous continuation. + + + + Writes logging event to the log target. Must be overridden in inheriting + classes. + + Logging event to be written out. + Builtin IFileCompressor implementation utilizing the .Net4.5 specific @@ -24485,11 +29515,110 @@ Current local time retrieved directly from DateTime.Now. + + + Gets current local time directly from DateTime.Now. + + + + + Converts the specified system time to the same form as the time value originated from this time source. + + The system originated time value to convert. + + The value of converted to local time. + + + + + Current UTC time retrieved directly from DateTime.UtcNow. + + + + + Gets current UTC time directly from DateTime.UtcNow. + + + + + Converts the specified system time to the same form as the time value originated from this time source. + + The system originated time value to convert. + + The value of converted to UTC time. + + + + + Fast time source that updates current time only once per tick (15.6 milliseconds). + + + + + Gets raw uncached time from derived time source. + + + + + Gets current time cached for one system tick (15.6 milliseconds). + + + + + Fast local time source that is updated once per tick (15.6 milliseconds). + + + + + Gets uncached local time directly from DateTime.Now. + + + + + Converts the specified system time to the same form as the time value originated from this time source. + + The system originated time value to convert. + + The value of converted to local time. + + + + + Fast UTC time source that is updated once per tick (15.6 milliseconds). + + + + + Gets uncached UTC time directly from DateTime.UtcNow. + + + + + Converts the specified system time to the same form as the time value originated from this time source. + + The system originated time value to convert. + + The value of converted to UTC time. + + Defines source of current time. + + + Gets current time. + + + + + Gets or sets current global time source used in all log events. + + + Default time source is . + + Returns a that represents this instance. @@ -24523,105 +29652,6 @@ - - - Gets current time. - - - - - Gets or sets current global time source used in all log events. - - - Default time source is . - - - - - Converts the specified system time to the same form as the time value originated from this time source. - - The system originated time value to convert. - - The value of converted to local time. - - - - - Gets current local time directly from DateTime.Now. - - - - - Current UTC time retrieved directly from DateTime.UtcNow. - - - - - Converts the specified system time to the same form as the time value originated from this time source. - - The system originated time value to convert. - - The value of converted to UTC time. - - - - - Gets current UTC time directly from DateTime.UtcNow. - - - - - Fast time source that updates current time only once per tick (15.6 milliseconds). - - - - - Gets raw uncached time from derived time source. - - - - - Gets current time cached for one system tick (15.6 milliseconds). - - - - - Fast local time source that is updated once per tick (15.6 milliseconds). - - - - - Converts the specified system time to the same form as the time value originated from this time source. - - The system originated time value to convert. - - The value of converted to local time. - - - - - Gets uncached local time directly from DateTime.Now. - - - - - Fast UTC time source that is updated once per tick (15.6 milliseconds). - - - - - Converts the specified system time to the same form as the time value originated from this time source. - - The system originated time value to convert. - - The value of converted to UTC time. - - - - - Gets uncached UTC time directly from DateTime.UtcNow. - - Marks class as a time source and assigns a name to it. @@ -24629,7 +29659,7 @@ - Initializes a new instance of the class. + Initializes a new instance of the class. Name of the time source. diff --git a/ScheMe-SP/bin/Newtonsoft.Json.dll b/ScheMe-SP/bin/Newtonsoft.Json.dll index 77a5d89..7af125a 100644 Binary files a/ScheMe-SP/bin/Newtonsoft.Json.dll and b/ScheMe-SP/bin/Newtonsoft.Json.dll differ diff --git a/ScheMe-SP/bin/Newtonsoft.Json.xml b/ScheMe-SP/bin/Newtonsoft.Json.xml index b386458..008e0ca 100644 --- a/ScheMe-SP/bin/Newtonsoft.Json.xml +++ b/ScheMe-SP/bin/Newtonsoft.Json.xml @@ -767,14 +767,22 @@ Gets or sets a value indicating whether the written enum text should be camel case. + The default value is false. true if the written enum text will be camel case; otherwise, false. + + + Gets or sets the naming strategy used to resolve how enum text is written. + + The naming strategy used to resolve how enum text is written. + - Gets or sets a value indicating whether integer values are allowed when deserializing. + Gets or sets a value indicating whether integer values are allowed when serializing and deserializing. + The default value is true. - true if integers are allowed when deserializing; otherwise, false. + true if integers are allowed when serializing and deserializing; otherwise, false. @@ -787,6 +795,44 @@ true if the written enum text will be camel case; otherwise, false. + + + Initializes a new instance of the class. + + The naming strategy used to resolve how enum text is written. + true if integers are allowed when serializing and deserializing; otherwise, false. + + + + Initializes a new instance of the class. + + The of the used to write enum text. + + + + Initializes a new instance of the class. + + The of the used to write enum text. + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + + Initializes a new instance of the class. + + The of the used to write enum text. + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + true if integers are allowed when serializing and deserializing; otherwise, false. + Writes the JSON representation of the object. @@ -814,6 +860,29 @@ true if this instance can convert the specified object type; otherwise, false. + + + Converts a to and from Unix epoch time + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + Converts a to and from a string (e.g. "1.2.3.4"). @@ -859,7 +928,7 @@ - Gets or sets a flag to indicate whether to write the Json.NET array attribute. + Gets or sets a value to indicate whether to write the Json.NET array attribute. This attribute helps preserve arrays when converting the written XML back to JSON. true if the array attribute is written to the XML; otherwise, false. @@ -870,6 +939,15 @@ true if the JSON root object is omitted; otherwise, false. + + + Gets or sets a value indicating whether to encode special characters when converting JSON to XML. + If true, special characters like ':', '@', '?', '#' and '$' in JSON property names aren't used to specify + XML namespaces, attributes or processing directives. Instead special characters are encoded and written + as part of the XML element name. + + true if special characters are encoded; otherwise, false. + Writes the JSON representation of the object. @@ -932,12 +1010,12 @@ - Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . - Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . @@ -966,6 +1044,33 @@ Time zone information should be preserved when converting. + + + The default JSON name table implementation. + + + + + Initializes a new instance of the class. + + + + + Gets a string containing the same characters as the specified range of characters in the given array. + + The character array containing the name to find. + The zero-based index into the array specifying the first character of the name. + The number of characters in the name. + A string containing the same characters as the specified range of characters in the given array. + + + + Adds the specified string into name table. + + The string to add. + This method is not thread-safe. + The resolved string. + Specifies default value handling options for the . @@ -1409,7 +1514,7 @@ Converts the to its JSON string representation. The value to convert. - A JSON string representation of the . + A JSON string representation of the . @@ -1724,11 +1829,30 @@ The JSON string. The name of the root element to append when deserializing. - A flag to indicate whether to write the Json.NET array attribute. + A value to indicate whether to write the Json.NET array attribute. This attribute helps preserve arrays when converting the written XML back to JSON. The deserialized . + + + Deserializes the from a JSON string nested in a root element specified by , + writes a Json.NET array attribute for collections, and encodes special characters. + + The JSON string. + The name of the root element to append when deserializing. + + A value to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + + A value to indicate whether to encode special characters when converting JSON to XML. + If true, special characters like ':', '@', '?', '#' and '$' in JSON property names aren't used to specify + XML namespaces, attributes or processing directives. Instead special characters are encoded and written + as part of the XML element name. + + The deserialized . + Serializes the to a JSON string. @@ -1776,11 +1900,30 @@ The JSON string. The name of the root element to append when deserializing. - A flag to indicate whether to write the Json.NET array attribute. + A value to indicate whether to write the Json.NET array attribute. This attribute helps preserve arrays when converting the written XML back to JSON. The deserialized . + + + Deserializes the from a JSON string nested in a root element specified by , + writes a Json.NET array attribute for collections, and encodes special characters. + + The JSON string. + The name of the root element to append when deserializing. + + A value to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + + A value to indicate whether to encode special characters when converting JSON to XML. + If true, special characters like ':', '@', '?', '#' and '$' in JSON property names aren't used to specify + XML namespaces, attributes or processing directives. Instead special characters are encoded and written + as part of the XML element name. + + The deserialized . + Converts an object to and from JSON. @@ -1825,6 +1968,58 @@ true if this can write JSON; otherwise, false. + + + Converts an object to and from JSON. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. If there is no existing value then null will be used. + The existing value has a value. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + Instructs the to use the specified when serializing the member or class. @@ -1942,6 +2137,20 @@ Instructs the not to serialize the public field or public read/write property value. + + + Base class for a table of atomized string objects. + + + + + Gets a string containing the same characters as the specified range of characters in the given array. + + The character array containing the name to find. + The zero-based index into the array specifying the first character of the name. + The number of characters in the name. + A string containing the same characters as the specified range of characters in the given array. + Instructs the how to serialize the object. @@ -1953,6 +2162,18 @@ The member serialization. + + + Gets or sets the missing member handling used when deserializing this object. + + The missing member handling. + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + Gets or sets a value that indicates whether the object's properties are required. @@ -1985,9 +2206,9 @@ - Gets or sets the used when serializing the property's collection items. + Gets or sets the type used when serializing the property's collection items. - The collection's items . + The collection's items type. @@ -2119,7 +2340,7 @@ A that represents the asynchronous read. The property returns true if the next token was read successfully; false if there are no more tokens to read. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -2128,7 +2349,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -2138,7 +2359,7 @@ A that represents the asynchronous read. The property returns the of . This result will be null at the end of an array. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -2148,7 +2369,7 @@ A that represents the asynchronous read. The property returns the []. This result will be null at the end of an array. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -2158,7 +2379,7 @@ A that represents the asynchronous read. The property returns the of . This result will be null at the end of an array. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -2168,7 +2389,7 @@ A that represents the asynchronous read. The property returns the of . This result will be null at the end of an array. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -2178,7 +2399,7 @@ A that represents the asynchronous read. The property returns the of . This result will be null at the end of an array. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -2188,7 +2409,7 @@ A that represents the asynchronous read. The property returns the of . This result will be null at the end of an array. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -2198,7 +2419,7 @@ A that represents the asynchronous read. The property returns the of . This result will be null at the end of an array. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -2208,7 +2429,7 @@ A that represents the asynchronous read. The property returns the . This result will be null at the end of an array. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -2332,6 +2553,8 @@ Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is 128. @@ -2540,6 +2763,24 @@ The exception thrown when an error occurs during JSON serialization or deserialization. + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + Initializes a new instance of the class. @@ -2569,6 +2810,17 @@ The parameter is null. The class name is null or is zero (0). + + + Initializes a new instance of the class + with a specified error message, JSON path, line number, line position, and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The line number indicating where the error occurred. + The line position indicating where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + Serializes and deserializes objects into and from the JSON format. @@ -2610,6 +2862,7 @@ Gets or sets how type name writing and reading is handled by the serializer. + The default value is . should be used with caution when your application deserializes JSON from an external source. @@ -2620,55 +2873,65 @@ Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . The type name assembly format. Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . The type name assembly format. Gets or sets how object references are preserved by the serializer. + The default value is . Gets or sets how reference loops (e.g. a class referencing itself) is handled. + The default value is . Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . Gets or sets how null values are handled during serialization and deserialization. + The default value is . Gets or sets how default values are handled during serialization and deserialization. + The default value is . Gets or sets how objects are created during deserialization. + The default value is . The object creation handling. Gets or sets how constructors are used during deserialization. + The default value is . The constructor handling. Gets or sets how metadata properties are used during deserialization. + The default value is . The metadata properties handling. @@ -2693,26 +2956,31 @@ Indicates how JSON text output is formatted. + The default value is . Gets or sets how dates are written to JSON text. + The default value is . Gets or sets how time zones are handled during serialization and deserialization. + The default value is . Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . @@ -2720,32 +2988,39 @@ Gets or sets how special floating point numbers, e.g. , and , are written as JSON text. + The default value is . Gets or sets how strings are escaped when writing JSON text. + The default value is . Gets or sets how and values are formatted when writing JSON text, and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". - Gets or sets the culture used when reading JSON. Defaults to . + Gets or sets the culture used when reading JSON. + The default value is . Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is 128. Gets a value indicating whether there will be a check for additional JSON content after deserializing an object. + The default value is false. true if there will be a check for additional JSON content after deserializing an object; otherwise, false. @@ -2810,14 +3085,14 @@ Populates the JSON values onto the target object. - The that contains the JSON structure to reader values from. + The that contains the JSON structure to read values from. The target object to populate values onto. Populates the JSON values onto the target object. - The that contains the JSON structure to reader values from. + The that contains the JSON structure to read values from. The target object to populate values onto. @@ -2829,7 +3104,7 @@ - Deserializes the JSON structure contained by the specified + Deserializes the JSON structure contained by the specified into an instance of the specified type. The containing the object. @@ -2904,30 +3179,35 @@ Gets or sets how reference loops (e.g. a class referencing itself) are handled. + The default value is . Reference loop handling. Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . Missing member handling. Gets or sets how objects are created during deserialization. + The default value is . The object creation handling. Gets or sets how null values are handled during serialization and deserialization. + The default value is . Null value handling. Gets or sets how default values are handled during serialization and deserialization. + The default value is . The default value handling. @@ -2940,12 +3220,14 @@ Gets or sets how object references are preserved by the serializer. + The default value is . The preserve references handling. Gets or sets how type name writing and reading is handled by the serializer. + The default value is . should be used with caution when your application deserializes JSON from an external source. @@ -2957,24 +3239,28 @@ Gets or sets how metadata properties are used during deserialization. + The default value is . The metadata properties handling. Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . The type name assembly format. Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . The type name assembly format. Gets or sets how constructors are used during deserialization. + The default value is . The constructor handling. @@ -3037,31 +3323,38 @@ Gets or sets how and values are formatted when writing JSON text, and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is 128. Indicates how JSON text output is formatted. + The default value is . Gets or sets how dates are written to JSON text. + The default value is . Gets or sets how time zones are handled during serialization and deserialization. + The default value is . - Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . @@ -3069,26 +3362,31 @@ Gets or sets how special floating point numbers, e.g. , and , are written as JSON. + The default value is . Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . Gets or sets how strings are escaped when writing JSON text. + The default value is . - Gets or sets the culture used when reading JSON. Defaults to . + Gets or sets the culture used when reading JSON. + The default value is . Gets a value indicating whether there will be a check for additional content after deserializing an object. + The default value is false. true if there will be a check for additional content after deserializing an object; otherwise, false. @@ -3200,6 +3498,11 @@ The containing the JSON data to read. + + + Gets or sets the reader's property name table. + + Gets or sets the reader's character buffer pool. @@ -4236,7 +4539,7 @@ Represents a reader that provides validation. - JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + JSON Schema validation has been moved to its own package. See https://www.newtonsoft.com/jsonschema for more details. @@ -4376,7 +4679,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4385,7 +4688,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4395,7 +4698,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4404,7 +4707,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4413,7 +4716,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4422,7 +4725,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4432,7 +4735,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4441,7 +4744,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4450,7 +4753,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4459,7 +4762,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4468,7 +4771,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4477,7 +4780,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4487,7 +4790,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4498,7 +4801,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4507,7 +4810,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4517,7 +4820,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4527,7 +4830,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4537,7 +4840,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4546,7 +4849,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4556,7 +4859,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4567,7 +4870,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4577,7 +4880,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4592,7 +4895,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4602,7 +4905,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4612,7 +4915,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4622,7 +4925,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4632,7 +4935,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4642,7 +4945,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4652,7 +4955,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4662,7 +4965,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4672,7 +4975,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4682,7 +4985,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4692,7 +4995,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4702,7 +5005,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4712,7 +5015,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4722,7 +5025,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4732,7 +5035,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4742,7 +5045,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4752,7 +5055,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4762,7 +5065,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4772,7 +5075,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4782,7 +5085,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4792,7 +5095,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4802,7 +5105,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4812,7 +5115,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4822,7 +5125,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4832,7 +5135,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4842,7 +5145,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4852,7 +5155,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4862,7 +5165,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4872,7 +5175,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4882,7 +5185,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4892,7 +5195,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4902,7 +5205,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4912,7 +5215,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4922,7 +5225,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4932,7 +5235,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4942,7 +5245,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4952,7 +5255,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4962,7 +5265,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4972,7 +5275,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4981,7 +5284,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -4991,7 +5294,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -5002,7 +5305,7 @@ The token to monitor for cancellation requests. The default value is . A that represents the asynchronous operation. The default behaviour is to execute synchronously, returning an already-completed task. Derived - classes can override this behaviour for true asychronousity. + classes can override this behaviour for true asynchronicity. @@ -5530,19 +5833,24 @@ Load comments as a with type . - + - Specifies how line information is handled when loading JSON. + Specifies how duplicate property names are handled when loading JSON. - + - Ignore line information. + Replace the existing value when there is a duplicate property. The value of the last property in the JSON object will be used. - + - Load line information. + Ignore the new value when there is a duplicate property. The value of the first property in the JSON object will be used. + + + + + Throw a when a duplicate property is encountered. @@ -6311,11 +6619,21 @@ - Gets a the specified name. + Gets a with the specified name. The property name. A with the specified name or null. + + + Gets the with the specified name. + The exact name will be searched for first and if no matching property is found then + the will be used to match a property. + + The property name. + One of the enumeration values that specifies how the strings will be compared. + A matched with the specified name or null. + Gets a of of this object's property values. @@ -6441,6 +6759,13 @@ Name of the property. The value. + + + Determines whether the JSON object has the specified property name. + + Name of the property. + true if the JSON object has the specified property name; otherwise, false. + Removes the property with the specified name. @@ -6719,20 +7044,34 @@ Gets or sets how JSON comments are handled when loading JSON. + The default value is . The JSON comment handling. Gets or sets how JSON line info is handled when loading JSON. + The default value is . The JSON line info handling. + + + Gets or sets how duplicate property names in JSON objects are handled when loading JSON. + The default value is . + + The JSON duplicate property name handling. + Specifies the settings used when merging JSON. + + + Initializes a new instance of the class. + + Gets or sets the method used when merging JSON arrays. @@ -6745,6 +7084,35 @@ How null value properties are merged. + + + Gets or sets the comparison used to match property names while merging. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + The comparison used to match property names while merging. + + + + Specifies the settings used when selecting JSON. + + + + + Gets or sets a timeout that will be used when executing regular expressions. + + The timeout that will be used when executing regular expressions. + + + + Gets or sets a flag that indicates whether an error should be thrown if + no tokens are found when evaluating part of the expression. + + + A flag that indicates whether an error should be thrown if + no tokens are found when evaluating part of the expression. + + Represents an abstract JSON token. @@ -6986,6 +7354,10 @@ Returns the indented JSON for this token. + + ToString() returns a non-JSON string value for tokens with a type of . + If you want the JSON for all token types then you should use . + The indented JSON for this token. @@ -7619,42 +7991,62 @@ - Selects a using a JPath expression. Selects the token that matches the object path. + Selects a using a JSONPath expression. Selects the token that matches the object path. - A that contains a JPath expression. + A that contains a JSONPath expression. A , or null. - Selects a using a JPath expression. Selects the token that matches the object path. + Selects a using a JSONPath expression. Selects the token that matches the object path. - A that contains a JPath expression. + A that contains a JSONPath expression. A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. A . - + - Selects a collection of elements using a JPath expression. + Selects a using a JSONPath expression. Selects the token that matches the object path. - A that contains a JPath expression. + A that contains a JSONPath expression. + + The used to select tokens. + A . + + + + Selects a collection of elements using a JSONPath expression. + + + A that contains a JSONPath expression. An of that contains the selected elements. - Selects a collection of elements using a JPath expression. + Selects a collection of elements using a JSONPath expression. - A that contains a JPath expression. + A that contains a JSONPath expression. A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. An of that contains the selected elements. + + + Selects a collection of elements using a JSONPath expression. + + + A that contains a JSONPath expression. + + The used to select tokens. + An of that contains the selected elements. + Returns the responsible for binding operations performed on this object. @@ -7764,6 +8156,13 @@ The token to read from. + + + Initializes a new instance of the class. + + The token to read from. + The initial path of the token. It is prepended to the returned . + Reads the next JSON token from the underlying . @@ -8277,6 +8676,10 @@ Returns a that represents this instance. + + ToString() returns a non-JSON string value for tokens with a type of . + If you want the JSON for all token types then you should use . + A that represents this instance. @@ -8338,6 +8741,21 @@ is not of the same type as this instance. + + + Specifies how line information is handled when loading JSON. + + + + + Ignore line information. + + + + + Load line information. + + Specifies how JSON arrays are merged together. @@ -8548,7 +8966,7 @@ Contains the JSON schema extension methods. - JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + JSON Schema validation has been moved to its own package. See https://www.newtonsoft.com/jsonschema for more details. @@ -8558,7 +8976,7 @@ Determines whether the is valid. - JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + JSON Schema validation has been moved to its own package. See https://www.newtonsoft.com/jsonschema for more details. The source to test. @@ -8573,7 +8991,7 @@ Determines whether the is valid. - JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + JSON Schema validation has been moved to its own package. See https://www.newtonsoft.com/jsonschema for more details. The source to test. @@ -8589,7 +9007,7 @@ Validates the specified . - JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + JSON Schema validation has been moved to its own package. See https://www.newtonsoft.com/jsonschema for more details. The source to test. @@ -8601,7 +9019,7 @@ Validates the specified . - JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + JSON Schema validation has been moved to its own package. See https://www.newtonsoft.com/jsonschema for more details. The source to test. @@ -8614,7 +9032,7 @@ An in-memory representation of a JSON Schema. - JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + JSON Schema validation has been moved to its own package. See https://www.newtonsoft.com/jsonschema for more details. @@ -8876,7 +9294,7 @@ Returns detailed information about the schema exception. - JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + JSON Schema validation has been moved to its own package. See https://www.newtonsoft.com/jsonschema for more details. @@ -8933,7 +9351,7 @@ Generates a from a specified . - JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + JSON Schema validation has been moved to its own package. See https://www.newtonsoft.com/jsonschema for more details. @@ -8986,7 +9404,7 @@ Resolves from an id. - JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + JSON Schema validation has been moved to its own package. See https://www.newtonsoft.com/jsonschema for more details. @@ -9014,7 +9432,7 @@ The value types allowed by the . - JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + JSON Schema validation has been moved to its own package. See https://www.newtonsoft.com/jsonschema for more details. @@ -9069,7 +9487,7 @@ Specifies undefined schema Id handling options for the . - JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + JSON Schema validation has been moved to its own package. See https://www.newtonsoft.com/jsonschema for more details. @@ -9094,7 +9512,7 @@ Returns detailed information related to the . - JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + JSON Schema validation has been moved to its own package. See https://www.newtonsoft.com/jsonschema for more details. @@ -9122,7 +9540,7 @@ Represents the callback method that will handle JSON schema validation events and the . - JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + JSON Schema validation has been moved to its own package. See https://www.newtonsoft.com/jsonschema for more details. @@ -9231,6 +9649,22 @@ true if the attribute will be ignored when serializing and deserializing types; otherwise, false. + + + Gets or sets a value indicating whether to ignore IsSpecified members when serializing and deserializing types. + + + true if the IsSpecified members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore ShouldSerialize members when serializing and deserializing types. + + + true if the ShouldSerialize members will be ignored when serializing and deserializing types; otherwise, false. + + Gets or sets the naming strategy used to resolve how property names and dictionary keys are serialized. @@ -9829,6 +10263,13 @@ The converter. + + + Gets the internally resolved for the contract's type. + This converter is used as a fallback converter when no other converter is resolved. + Setting will always override this converter. + + Gets or sets all methods called immediately after deserialization of the object. @@ -9974,6 +10415,12 @@ The member object serialization. + + + Gets or sets the missing member handling used when deserializing this object. + + The missing member handling. + Gets or sets a value that indicates whether the object's properties are required. @@ -9982,6 +10429,12 @@ A value indicating whether the object's properties are required. + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + Gets the object's properties. @@ -10134,6 +10587,11 @@ A value indicating whether this is required. + + + Gets a value indicating whether has a value specified. + + Gets or sets a value indicating whether this property preserves object references. @@ -10285,9 +10743,53 @@ Lookup and create an instance of the type described by the argument. The type to create. - Optional arguments to pass to an initializing constructor of the JsonConverter. + Optional arguments to pass to an initializing constructor of the JsonConverter. If null, the default constructor is used. + + + A kebab case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + Represents a trace writer that writes to memory. When the trace message limit is @@ -10384,6 +10886,26 @@ The property name to resolve. The resolved property name. + + + Hash code calculation + + + + + + Object equality implementation + + + + + + + Compare to another NamingStrategy + + + + Represents a method that constructs an object. @@ -10618,18 +11140,12 @@ with a restriction limiting our type - + - Gets a dictionary of the names and values of an type. + Helper class for serializing immutable collections. + Note that this is used by all builds, even those that don't support immutable collections, in case the DLL is GACed + https://github.com/JamesNK/Newtonsoft.Json/issues/652 - - - - - Gets a dictionary of the names and values of an Enum type. - - The enum type to get names and values for. - @@ -10645,15 +11161,6 @@ The member. The underlying type of the member. - - - Determines whether the member is an indexed property. - - The member. - - true if the member is an indexed property; otherwise, false. - - Determines whether the property is an indexed property. @@ -10756,5 +11263,43 @@ A write method has not been called. + + Specifies that an output will not be null even if the corresponding type allows it. + + + Specifies that when a method returns , the parameter will not be null even if the corresponding type allows it. + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + + Gets the return value condition. + + + Specifies that an output may be null even if the corresponding type disallows it. + + + Specifies that null is allowed as an input even if the corresponding type disallows it. + + + + Specifies that the method will not return if the associated Boolean parameter is passed the specified value. + + + + + Initializes a new instance of the class. + + + The condition parameter value. Code after the method will be considered unreachable by diagnostics if the argument to + the associated parameter matches this value. + + + + Gets the condition parameter value. + diff --git a/ScheMe-SP/bin/ScheMe.dll.config b/ScheMe-SP/bin/ScheMe.dll.config index 0e796b7..34e09d8 100644 --- a/ScheMe-SP/bin/ScheMe.dll.config +++ b/ScheMe-SP/bin/ScheMe.dll.config @@ -88,7 +88,7 @@ - + @@ -181,7 +181,7 @@ - + @@ -211,6 +211,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ScheMe-SP/bin/ScheMe_Data.dll b/ScheMe-SP/bin/ScheMe_Data.dll index 6734c56..fae955e 100644 Binary files a/ScheMe-SP/bin/ScheMe_Data.dll and b/ScheMe-SP/bin/ScheMe_Data.dll differ diff --git a/ScheMe-SP/bin/ScheMe_Data.dll.config b/ScheMe-SP/bin/ScheMe_Data.dll.config index 638c93a..e62549a 100644 --- a/ScheMe-SP/bin/ScheMe_Data.dll.config +++ b/ScheMe-SP/bin/ScheMe_Data.dll.config @@ -1,4 +1,4 @@ - + @@ -7,10 +7,46 @@ - - + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ScheMe-SP/bin/StackExchange.Redis.dll b/ScheMe-SP/bin/StackExchange.Redis.dll index 9a05be0..138d975 100644 Binary files a/ScheMe-SP/bin/StackExchange.Redis.dll and b/ScheMe-SP/bin/StackExchange.Redis.dll differ diff --git a/ScheMe-SP/bin/StackExchange.Redis.xml b/ScheMe-SP/bin/StackExchange.Redis.xml index dec657d..8a47137 100644 --- a/ScheMe-SP/bin/StackExchange.Redis.xml +++ b/ScheMe-SP/bin/StackExchange.Redis.xml @@ -4,116 +4,119 @@ StackExchange.Redis - + - Specifies how elements should be aggregated when combining sorted sets + Note that in results other than success, no guarantees are made about final state; if you care: snapshot - + - The values of the combined elements are added + Represents a message that is broadcast via pub/sub - + - The least value of the combined elements is used + See Object.ToString - + - The greatest value of the combined elements is used + See Object.GetHashCode - + - Bitwise operators + See Object.Equals + + The to compare. + + + + The channel that the subscription was created from - + - And + The channel that the message was broadcast to - + - Or + The value that was broadcast - + - Xor + Checks if 2 messages are .Equal() - + - Not + Checks if 2 messages are not .Equal() - + - The client flags can be a combination of: - O: the client is a slave in MONITOR mode - S: the client is a normal slave server - M: the client is a master - x: the client is in a MULTI/EXEC context - b: the client is waiting in a blocking operation - i: the client is waiting for a VM I/O (deprecated) - d: a watched keys has been modified - EXEC will fail - c: connection to be closed after writing entire reply - u: the client is unblocked - A: connection to be closed ASAP - N: no specific flag set + Represents a message queue of ordered pub/sub notifications + + To create a ChannelMessageQueue, use ISubscriber.Subscribe[Async](RedisKey) + + + + The Channel that was subscribed for this queue - + - no specific flag set + See Object.ToString - + - the client is a slave in MONITOR mode + An awaitable task the indicates completion of the queue (including drain of data) - + - the client is a normal slave server + Consume a message from the channel. + The to use. - + - the client is a master + Attempt to synchronously consume a message from the channel. + The read from the Channel. - + - the client is in a MULTI/EXEC context + Attempt to query the backlog length of the queue. + The (approximate) count of items in the Channel. - + - the client is waiting in a blocking operation + Create a message loop that processes messages sequentially. + The handler to run when receiving a message. - + - a watched keys has been modified - EXEC will fail + Create a message loop that processes messages sequentially. + The handler to execute when receiving a message. - + - connection to be closed after writing entire reply + Stop receiving messages on this channel. + The flags to use when unsubscribing. - + - the client is unblocked - - - - - connection to be closed ASAP + Stop receiving messages on this channel. + The flags to use when unsubscribing. @@ -141,20 +144,23 @@ - - The client flags can be a combination of: - O: the client is a slave in MONITOR mode - S: the client is a normal slave server - M: the client is a master - x: the client is in a MULTI/EXEC context - b: the client is waiting in a blocking operation - i: the client is waiting for a VM I/O (deprecated) - d: a watched keys has been modified - EXEC will fail - c: connection to be closed after writing entire reply - u: the client is unblocked - A: connection to be closed ASAP - N: no specific flag set - + + The client flags can be a combination of: + + A: connection to be closed ASAP + b: the client is waiting in a blocking operation + c: connection to be closed after writing entire reply + d: a watched keys has been modified - EXEC will fail + i: the client is waiting for a VM I/O (deprecated) + M: the client is a master + N: no specific flag set + O: the client is a replica in MONITOR mode + P: the client is a Pub/Sub subscriber + r: the client is in readonly mode against a cluster node + S: the client is a normal replica server + U: the client is connected via a Unix domain socket + x: the client is in a MULTI/EXEC context + @@ -216,26 +222,6 @@ The class of the connection - - - The class of the connection - - - - - Regular connections, including MONITOR connections - - - - - Replication connections - - - - - Subscription connections - - Indicates a range of slots served by a cluster node @@ -245,6 +231,8 @@ Create a new SlotRange value + The slot ID to start at. + The slot ID to end at. @@ -260,31 +248,40 @@ Indicates whether two ranges are not equal + The first slot range. + The second slot range. - Indicates whether two ranges are equal + Indicates whether two ranges are equal. + The first slot range. + The second slot range. - Try to parse a string as a range + Try to parse a string as a range. + The range string to parse, e.g."1-12". + The parsed , if successful. Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. + The other slot range to compare to. See Object.Equals + The other slot range to compare to. Indicates whether two ranges are equal + The other slot range to compare to. @@ -316,20 +313,23 @@ Obtain the node relating to a specified endpoint + The endpoint to get a cluster node from. - Gets the node that serves the specified slot + Gets the node that serves the specified slot. + The slot ID to get a node by. - Gets the node that serves the specified slot + Gets the node that serves the specified key's slot. + The key to identify a node by. - Represents the configuration of a single node in a cluster configuration + Represents the configuration of a single node in a cluster configuration. @@ -349,7 +349,12 @@ - Gets whether this node is a slave + Gets whether this node is a replica + + + + + Gets whether this node is a replica @@ -391,16 +396,19 @@ Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. + The to compare to. See Object.Equals + The to compare to. Indicates whether two ClusterNode instances are equivalent + The to compare to. @@ -412,59 +420,6 @@ See Object.ToString() - - - Behaviour markers associated with a given command - - - - - Default behaviour. - - - - - This command may jump regular-priority commands that have not yet been written to the redis stream. - - - - - The caller is not interested in the result; the caller will immediately receive a default-value - of the expected return type (this value is not indicative of anything at the server). - - - - - This operation should be performed on the master if it is available, but read operations may - be performed on a slave if no master is available. This is the default option. - - - - - This operation should only be performed on the master. - - - - - This operation should be performed on the slave if it is available, but will be performed on - a master if no slaves are available. Suitable for read operations only. - - - - - This operation should only be performed on a slave. Suitable for read operations only. - - - - - Indicates that this operation should not be forwarded to other servers as a result of an ASK or MOVED response - - - - - Indicates that script-related operations should use EVAL, not SCRIPT LOAD + EVALSHA - - Represents the commands mapped on a particular configuration @@ -489,45 +444,28 @@ - The commands available to http://redis.io/topics/sentinel + The commands available to https://redis.io/topics/sentinel - http://redis.io/topics/sentinel + https://redis.io/topics/sentinel Create a new CommandMap, customizing some commands + The commands to override. Creates a CommandMap by specifying which commands are available or unavailable + The commands to specify. + Whether the commands are available or excluded. See Object.ToString() - - - track status of a command while communicating with Redis - - - - - command status unknown - - - - - ConnectionMultiplexer has not yet started writing this command to redis - - - - - command has been sent to Redis - - Represents the information known about long-running commands @@ -559,114 +497,6 @@ Deduces a link to the redis documentation about the specified command - - - Helper for Array.ConvertAll() as it's missing on .Net Core. - - - - - Converts array of one type to an array of another type. - - Input type - Output type - source - selector - - - - - A collection of IProfiledCommands. - - This is a very light weight data structure, only supporting enumeration. - - While it implements IEnumerable, it there are fewer allocations if one uses - it's explicit GetEnumerator() method. Using `foreach` does this automatically. - - This type is not threadsafe. - - - - - Implements IEnumerator for ProfiledCommandEnumerable. - This implementation is comparable to List.Enumerator and Dictionary.Enumerator, - and is provided to reduce allocations in the common (ie. foreach) case. - - This type is not threadsafe. - - - - - The current element. - - - - - Advances the enumeration, returning true if there is a new element to consume and false - if enumeration is complete. - - - - - Resets the enumeration. - - - - - Disposes the enumeration. - subsequent attempts to enumerate results in undefined behavior. - - - - - Returns an implementor of IEnumerator that, provided it isn't accessed - though an interface, avoids allocations. - - `foreach` will automatically use this method. - - - - - A thread-safe collection tailored to the "always append, with high contention, then enumerate once with no contention" - behavior of our profiling. - - Performs better than ConcurrentBag, which is important since profiling code shouldn't impact timings. - - - - - This method is thread-safe. - - Adds an element to the bag. - - Order is not preserved. - - The element can only be a member of *one* bag. - - - - - This method returns an enumerable view of the bag, and returns it to - an internal pool for reuse by GetOrCreate(). - - It is not thread safe. - - It should only be called once the bag is finished being mutated. - - - - - This returns the ConcurrentProfileStorageCollection to an internal pool for reuse by GetOrCreate(). - - - - - Returns a ConcurrentProfileStorageCollection to use. - - It *may* have allocated a new one, or it may return one that has previously been released. - To return the collection, call EnumerateAndReturnForReuse() - - Describes a pre-condition used in a redis transaction @@ -674,138 +504,316 @@ - Enforces that the given hash-field must have the specified value + Enforces that the given hash-field must have the specified value. + The key of the hash to check. + The field in the hash to check. + The value that the hash field must match. - Enforces that the given hash-field must exist + Enforces that the given hash-field must exist. + The key of the hash to check. + The field in the hash to check. - Enforces that the given hash-field must not have the specified value + Enforces that the given hash-field must not have the specified value. + The key of the hash to check. + The field in the hash to check. + The value that the hash field must not match. - Enforces that the given hash-field must not exist + Enforces that the given hash-field must not exist. + The key of the hash to check. + The field in the hash that must not exist. - Enforces that the given key must exist + Enforces that the given key must exist. + The key that must exist. Enforces that the given key must not exist + The key that must not exist. Enforces that the given list index must have the specified value + The key of the list to check. + The position in the list to check. + The value of the list position that must match. Enforces that the given list index must exist + The key of the list to check. + The position in the list that must exist. Enforces that the given list index must not have the specified value + The key of the list to check. + The position in the list to check. + The value of the list position must not match. Enforces that the given list index must not exist + The key of the list to check. + The position in the list that must not exist. Enforces that the given key must have the specified value + The key to check. + The value that must match. Enforces that the given key must not have the specified value + The key to check. + The value that must not match. Enforces that the given hash length is a certain value + The key of the hash to check. + The length the hash must have. Enforces that the given hash length is less than a certain value + The key of the hash to check. + The length the hash must be less than. Enforces that the given hash length is greater than a certain value + The key of the hash to check. + The length the hash must be greater than. Enforces that the given string length is a certain value + The key of the string to check. + The length the string must be equal to. Enforces that the given string length is less than a certain value + The key of the string to check. + The length the string must be less than. Enforces that the given string length is greater than a certain value + The key of the string to check. + The length the string must be greater than. Enforces that the given list length is a certain value + The key of the list to check. + The length the list must be equal to. Enforces that the given list length is less than a certain value + The key of the list to check. + The length the list must be less than. Enforces that the given list length is greater than a certain value + The key of the list to check. + The length the list must be greater than. Enforces that the given set cardinality is a certain value + The key of the set to check. + The length the set must be equal to. Enforces that the given set cardinality is less than a certain value + The key of the set to check. + The length the set must be less than. Enforces that the given set cardinality is greater than a certain value + The key of the set to check. + The length the set must be greater than. + + + + Enforces that the given set contains a certain member + + The key of the set to check. + The member the set must contain. + + + + Enforces that the given set does not contain a certain member + + The key of the set to check. + The member the set must not contain. Enforces that the given sorted set cardinality is a certain value + The key of the sorted set to check. + The length the sorted set must be equal to. + + + + Enforces that the given sorted set contains a certain number of members with scores in the given range + + The key of the sorted set to check. + The length the sorted set must be equal to. + Minimum inclusive score. + Maximum inclusive score. Enforces that the given sorted set cardinality is less than a certain value + The key of the sorted set to check. + The length the sorted set must be less than. + + + + Enforces that the given sorted set contains less than a certain number of members with scores in the given range + + The key of the sorted set to check. + The length the sorted set must be equal to. + Minimum inclusive score. + Maximum inclusive score. Enforces that the given sorted set cardinality is greater than a certain value + The key of the sorted set to check. + The length the sorted set must be greater than. + + + + Enforces that the given sorted set contains more than a certain number of members with scores in the given range + + The key of the sorted set to check. + The length the sorted set must be equal to. + Minimum inclusive score. + Maximum inclusive score. + + + + Enforces that the given sorted set contains a certain member + + The key of the sorted set to check. + The member the sorted set must contain. + + + + Enforces that the given sorted set does not contain a certain member + + The key of the sorted set to check. + The member the sorted set must not contain. + + + + Enforces that the given sorted set member must have the specified score. + + The key of the sorted set to check. + The member the sorted set to check. + The score that member must have. + + + + Enforces that the given sorted set member must not have the specified score. + + The key of the sorted set to check. + The member the sorted set to check. + The score that member must not have. + + + + Enforces that the given sorted set must have the given score. + + The key of the sorted set to check. + The score that the sorted set must have. + + + + Enforces that the given sorted set must not have the given score. + + The key of the sorted set to check. + The score that the sorted set must not have. + + + + Enforces that the given sorted set must have the specified count of the given score. + + The key of the sorted set to check. + The score that the sorted set must have. + The number of members which sorted set must have. + + + + Enforces that the given sorted set must not have the specified count of the given score. + + The key of the sorted set to check. + The score that the sorted set must not have. + The number of members which sorted set must not have. + + + + Enforces that the given stream length is a certain value + + The key of the stream to check. + The length the stream must have. + + + + Enforces that the given stream length is less than a certain value + + The key of the stream to check. + The length the stream must be less than. + + + + Enforces that the given stream length is greater than a certain value + + The key of the stream to check. + The length the stream must be greater than. @@ -817,21 +825,6 @@ Indicates whether the condition was satisfied - - - Specifies the proxy that is being used to communicate to redis - - - - - Direct communication to the redis server(s) - - - - - Communication via twemproxy - - The options relevant to a set of redis connections @@ -859,26 +852,38 @@ Indicates whether admin operations should be allowed + + + Specifies the time in milliseconds that the system should allow for asynchronous operations (defaults to SyncTimeout) + + Indicates whether the connection should be encrypted - - - Indicates whether the connection should be encrypted - - - - - Configures which Ssl/TLS protocols should be allowed. If not set, defaults are chosen by the .NET framework. - - Automatically encodes and decodes channels + + + A Boolean value that specifies whether the certificate revocation list is checked during authentication. + + + + + Create a certificate validation check that checks against the supplied issuer even if not known by the machine + + The file system path to find the certificate at. + + + + Create a certificate validation check that checks against the supplied issuer even if not known by the machine + + The issuer to trust. + The client name to use for all connections @@ -904,9 +909,9 @@ Specifies the time in milliseconds that should be allowed for connection (defaults to 5 seconds unless SyncTimeout is higher) - + - The retry policy to be used for connection reconnects + Specifies the default database to be used when calling ConnectionMultiplexer.GetDatabase() without any parameters @@ -929,14 +934,29 @@ Specifies the time in seconds at which connections should be pinged to ensure validity + + + The user to use to authenticate with the server. + + - The password to use to authenticate with the server + The password to use to authenticate with the server. + + + + + Specifies whether asynchronous operations should be invoked in a way that guarantees their original delivery order - Type of proxy to use (if any); for example Proxy.Twemproxy + Type of proxy to use (if any); for example Proxy.Twemproxy. + + + + + The retry policy to be used for connection reconnects @@ -946,15 +966,26 @@ when attempting to re-connect after a connection failure. + + + Specifies the time in milliseconds that the system should allow for responses before concluding that the socket is unhealthy + (defaults to SyncTimeout) + + - The service name used to resolve a service via sentinel + The service name used to resolve a service via sentinel. - Gets or sets the SocketManager instance to be used with these options; if this is null a per-multiplexer - SocketManager is created automatically. + Gets or sets the SocketManager instance to be used with these options; if this is null a shared cross-multiplexer SocketManager + is used + + + + + Indicates whether the connection should be encrypted @@ -962,15 +993,14 @@ The target-host to use when validating SSL certificate; setting a value here enables SSL mode - + - Specifies the time in milliseconds that the system should allow for synchronous operations (defaults to 1 second) + Configures which Ssl/TLS protocols should be allowed. If not set, defaults are chosen by the .NET framework. - + - Specifies the time in milliseconds that the system should allow for responses before concluding that the socket is unhealthy - (defaults to SyncTimeout) + Specifies the time in milliseconds that the system should allow for synchronous operations (defaults to 5 seconds) @@ -983,11 +1013,6 @@ The size of the output buffer to use - - - Specifies the default database to be used when calling ConnectionMultiplexer.GetDatabase() without any parameters - - Check configuration every n seconds (every minute by default) @@ -997,6 +1022,7 @@ Parse the configuration from a comma-delimited configuration string + The configuration string to parse. is null. is empty. @@ -1004,6 +1030,8 @@ Parse the configuration from a comma-delimited configuration string + The configuration string to parse. + Whether to ignore unknown elements in . is null. is empty. @@ -1012,21 +1040,43 @@ Create a copy of the configuration + + + Apply settings to configure this instance of , e.g. for a specific scenario. + + An action that will update the properties of this instance. + This instance, with any changes made. + Resolve the default port for any endpoints that did not have a port explicitly specified + + + Sets default config settings required for sentinel usage + + Returns the effective configuration string for this configuration, including Redis credentials. + + Includes password to allow generation of configuration strings used for connecting multiplexer. + Returns the effective configuration string for this configuration with the option to include or exclude the password from the string. + Whether to include the password. + + + + List of domains known to be Azure Redis, so we can light up some helpful functionality + for minimizing downtime during maintenance events and such. + @@ -1061,7 +1111,7 @@ Indicates the total number of messages despatched to a non-preferred endpoint, for example sent to a master - when the caller stated a preference of slave + when the caller stated a preference of replica @@ -1114,6 +1164,17 @@ Contains information about a server connection failure + + + This constructor is only for testing purposes. + + The source of the event. + Redis endpoint. + Redis connection type. + Redis connection failure type. + The exception occured. + Connection physical name. + Gets the connection-type of the failing connection @@ -1134,6 +1195,840 @@ The type of failure + + + Returns the physical name of the connection. + + + + + Represents an inter-related group of connections to redis servers + + + + + Enables or disables a feature flag; this should only be used under support guidance, and should not be rapidly toggled + + + + + Returns the state of a feature flag; this should only be used under support guidance + + + + + For debugging: when not enabled, servers cannot connect + + + + + For debugging: when not enabled, end-connect is silently ignored (to simulate a long-running connect) + + + + + Tracks overall connection multiplexer counts + + + + + Tracks overall connection multiplexer counts + + + + + Tracks overall connection multiplexer counts + + + + + Provides a way of overriding the default Task Factory. If not set, it will use the default Task.Factory. + Useful when top level code sets it's own factory which may interfere with Redis queries. + + + + + Get summary statistics associates with this server + + + + + Gets the client-name that will be used on all new connections + + + + + Tries to get the Roleinstance Id if Microsoft.WindowsAzure.ServiceRuntime is loaded. + In case of any failure, swallows the exception and returns null + + + + + Gets the configuration of the connection + + + + + A server replied with an error message; + + + + + Write the configuration of all servers to an output stream + + The destination stream to write the export to. + The options to use for this export. + + + + Raised whenever a physical connection fails + + + + + Raised whenever an internal error occurs (this is primarily for debugging) + + + + + Raised whenever a physical connection is established + + + + + Raised when configuration changes are detected + + + + + Raised when nodes are explicitly requested to reconfigure via broadcast; + this usually means master/replica changes + + + + + Raised when server indicates a maintenance event is going to happen. + + + + + Gets the synchronous timeout associated with the connections + + + + + Gets the asynchronous timeout associated with the connections + + + + + Gets all endpoints defined on the server + + Whether to get only the endpoints specified explicitly in the config. + + + + Wait for a given asynchronous operation to complete (or timeout) + + The task to wait on. + + + + Wait for a given asynchronous operation to complete (or timeout) + + The type contains in the task to wait on. + The task to wait on. + + + + Wait for the given asynchronous operations to complete (or timeout) + + The tasks to wait on. + + + + Raised when a hash-slot has been relocated + + + + + Compute the hash-slot of a specified key + + The key to get a hash slot ID for. + + + + Create a new ConnectionMultiplexer instance. + + The string configuration to use for this multiplexer. + The to log to. + + + + Create a new ConnectionMultiplexer instance. + + The string configuration to use for this multiplexer. + Action to further modify the parsed configuration options. + The to log to. + + + + Create a new ConnectionMultiplexer instance. + + The configuration options to use for this multiplexer. + The to log to. + + + + Create a new ConnectionMultiplexer instance. + + The string configuration to use for this multiplexer. + The to log to. + + + + Create a new ConnectionMultiplexer instance. + + The string configuration to use for this multiplexer. + Action to further modify the parsed configuration options. + The to log to. + + + + Create a new ConnectionMultiplexer instance. + + The configuration options to use for this multiplexer. + The to log to. + + + + Create a new ConnectionMultiplexer instance that connects to a sentinel server + + The string configuration to use for this multiplexer. + The to log to. + + + + Create a new ConnectionMultiplexer instance that connects to a sentinel server + + The string configuration to use for this multiplexer. + The to log to. + + + + Create a new ConnectionMultiplexer instance that connects to a sentinel server + + The configuration options to use for this multiplexer. + The to log to. + + + + Create a new ConnectionMultiplexer instance that connects to a sentinel server + + The configuration options to use for this multiplexer. + The to log to. + + + + Create a new ConnectionMultiplexer instance that connects to a sentinel server, discovers the current master server + for the specified ServiceName in the config and returns a managed connection to the current master server + + The string configuration to use for this multiplexer. + The to log to. + + + + Create a new ConnectionMultiplexer instance that connects to a sentinel server, discovers the current master server + for the specified ServiceName in the config and returns a managed connection to the current master server + + The configuration options to use for this multiplexer. + The to log to. + + + + Create a new ConnectionMultiplexer instance that connects to a sentinel server, discovers the current master server + for the specified ServiceName in the config and returns a managed connection to the current master server + + The string configuration to use for this multiplexer. + The to log to. + + + + Create a new ConnectionMultiplexer instance that connects to a sentinel server, discovers the current master server + for the specified ServiceName in the config and returns a managed connection to the current master server + + The configuration options to use for this multiplexer. + The to log to. + + + + Obtain a pub/sub subscriber connection to the specified server + + The async state object to pass to the created . + + + + Obtain an interactive connection to a database inside redis + + The ID to get a database for. + The async state to pass into the resulting . + + + + Obtain a configuration API for an individual server + + The host to get a server for. + The port for to get a server for. + The async state to pass into the resulting . + + + + Obtain a configuration API for an individual server + + The "host:port" string to get a server for. + The async state to pass into the resulting . + + + + Obtain a configuration API for an individual server + + The host to get a server for. + The port for to get a server for. + + + + Obtain a configuration API for an individual server + + The endpoint to get a server for. + The async state to pass into the resulting . + + + + The number of operations that have been performed on all connections + + + + + Reconfigure the current connections based on the existing configuration + + The to log to. + + + + Reconfigure the current connections based on the existing configuration + + The to log to. + + + + Provides a text overview of the status of all connections + + + + + Provides a text overview of the status of all connections + + The to log to. + + + + See Object.ToString() + + + + + Gets or sets whether asynchronous operations should be invoked in a way that guarantees their original delivery order + + + + + Indicates whether any servers are connected + + + + + Indicates whether any servers are currently trying to connect + + + + + Initializes the connection as a Sentinel connection and adds + the necessary event handlers to track changes to the managed + masters. + + + + + + Returns a managed connection to the master server indicated by + the ServiceName in the config. + + the configuration to be used when connecting to the master + + + + + Switches the SentinelMasterConnection over to a new master. + + The endpoint responsible for the switch + The connection that should be switched over to a new master endpoint + Log to write to, if any + + + + Close all connections and release all resources associated with this object + + Whether to allow all in-queue commands to complete first. + + + + Close all connections and release all resources associated with this object + + Whether to allow all in-queue commands to complete first. + + + + Release all resources associated with this object + + + + + Should exceptions include identifiable details? (key names, additional .Data annotations) + + + + + Should exceptions include performance counter details? (CPU usage, etc - note that this can be problematic on some platforms) + + + + + Limit at which to start recording unusual busy patterns (only one log will be retained at a time; + set to a negative value to disable this feature) + + + + + Obtains the log of unusual busy patterns + + + + + Resets the log of unusual busy patterns + + + + + Request all compatible clients to reconfigure or reconnect + + The command flags to use.2 + The number of instances known to have received the message (however, the actual number can be higher; returns -1 if the operation is pending) + + + + Request all compatible clients to reconfigure or reconnect + + The command flags to use. + The number of instances known to have received the message (however, the actual number can be higher) + + + + Get the hash-slot associated with a given key, if applicable; this can be useful for grouping operations + + The to determine the hash slot for. + + + + Register a callback to provide an on-demand ambient session provider based on the + calling context; the implementing code is responsible for reliably resolving the same provider + based on ambient context, or returning null to not profile + + The session provider to register. + + + + Provides the ability to iterate over a cursor-based sequence of redis data, synchronously or asynchronously + + + + + Gets an enumerator for the sequence + + + + + Gets an enumerator for the sequence + + + + + Provides the ability to iterate over a cursor-based sequence of redis data, synchronously or asynchronously + + + + + Gets the current value of the enumerator + + + + + Release all resources associated with this enumerator + + + + + Release all resources associated with this enumerator + + + + + Try to move to the next item in the sequence + + + + + Try to move to the next item in the sequence + + + + + Reset the enumerator + + + + + A list of endpoints + + + + + Create a new EndPointCollection + + + + + Create a new EndPointCollection + + The endpoints to add to the collection. + + + + Format an endpoint + + The endpoint to get a string representation for. + + + + Attempt to parse a string into an EndPoint + + The endpoint string to parse. + + + + Adds a new endpoint to the list + + The host:port string to add an endpoint for to the collection. + + + + Adds a new endpoint to the list. + + The host to add. + The port for to add. + + + + Adds a new endpoint to the list. + + The host to add. + The port for to add. + + + + Try adding a new endpoint to the list. + + The endpoint to add. + True if the endpoint was added or false if not. + + + + See Collection<T>.InsertItem() + + The index to add into the collection at. + The item to insert at . + + + + See Collection<T>.SetItem() + + The index to replace an endpoint at. + The item to replace the existing endpoint at . + + + + + + + Event information related to redis endpoints + + + + + This constructor is only for testing purposes. + + The source of the event. + Redis endpoint. + + + + The endpoint involved in this event (this can be null) + + + + + Specifies how elements should be aggregated when combining sorted sets + + + + + The values of the combined elements are added + + + + + The least value of the combined elements is used + + + + + The greatest value of the combined elements is used + + + + + Bitwise operators + + + + + And + + + + + Or + + + + + Xor + + + + + Not + + + + + The client flags can be a combination of: + O: the client is a replica in MONITOR mode + S: the client is a normal replica server + M: the client is a master + x: the client is in a MULTI/EXEC context + b: the client is waiting in a blocking operation + i: the client is waiting for a VM I/O (deprecated) + d: a watched keys has been modified - EXEC will fail + c: connection to be closed after writing entire reply + u: the client is unblocked + A: connection to be closed ASAP + N: no specific flag set + + + + + no specific flag set + + + + + the client is a replica in MONITOR mode + + + + + the client is a replica in MONITOR mode + + + + + the client is a normal replica server + + + + + the client is a normal replica server + + + + + the client is a master + + + + + the client is in a MULTI/EXEC context + + + + + the client is waiting in a blocking operation + + + + + a watched keys has been modified - EXEC will fail + + + + + connection to be closed after writing entire reply + + + + + the client is unblocked + + + + + connection to be closed ASAP + + + + + the client is a Pub/Sub subscriber + + + + + the client is in readonly mode against a cluster node + + + + + the client is connected via a Unix domain socket + + + + + The class of the connection + + + + + Regular connections, including MONITOR connections + + + + + Replication connections + + + + + Replication connections + + + + + Subscription connections + + + + + Behaviour markers associated with a given command + + + + + Default behaviour. + + + + + From 2.0, this flag is not used + + + + + The caller is not interested in the result; the caller will immediately receive a default-value + of the expected return type (this value is not indicative of anything at the server). + + + + + This operation should be performed on the master if it is available, but read operations may + be performed on a replica if no master is available. This is the default option. + + + + + This operation should only be performed on the master. + + + + + This operation should be performed on the replica if it is available, but will be performed on + a master if no replicas are available. Suitable for read operations only. + + + + + This operation should be performed on the replica if it is available, but will be performed on + a master if no replicas are available. Suitable for read operations only. + + + + + This operation should only be performed on a replica. Suitable for read operations only. + + + + + This operation should only be performed on a replica. Suitable for read operations only. + + + + + Indicates that this operation should not be forwarded to other servers as a result of an ASK or MOVED response + + + + + Indicates that script-related operations should use EVAL, not SCRIPT LOAD + EVALSHA + + + + + track status of a command while communicating with Redis + + + + + command status unknown + + + + + ConnectionMultiplexer has not yet started writing this command to redis + + + + + command has been sent to Redis + + The known types of connection failure @@ -1189,284 +2084,6 @@ It has not been possible to create an intial connection to the redis server(s) - - - Represents an inter-related group of connections to redis servers - - - - - Provides a way of overriding the default Task Factory. If not set, it will use the default Task.Factory. - Useful when top level code sets it's own factory which may interfere with Redis queries. - - - - - Get summary statistics associates with this server - - - - - Gets the client-name that will be used on all new connections - - - - Tries to get the Roleinstance Id if Microsoft.WindowsAzure.ServiceRuntime is loaded. - In case of any failure, swallows the exception and returns null - - - - Gets the configuration of the connection - - - - - A server replied with an error message; - - - - - Write the configuration of all servers to an output stream - - - - - Used internally to synchronize loggine without depending on locking the log instance - - - - - Raised whenever a physical connection fails - - - - - Raised whenever an internal error occurs (this is primarily for debugging) - - - - - Raised whenever a physical connection is established - - - - - Raised when configuration changes are detected - - - - - Raised when nodes are explicitly requested to reconfigure via broadcast; - this usually means master/slave changes - - - - - Gets the timeout associated with the connections - - - - - Gets all endpoints defined on the server - - - - - - Wait for a given asynchronous operation to complete (or timeout) - - - - - Wait for a given asynchronous operation to complete (or timeout) - - - - - Wait for the given asynchronous operations to complete (or timeout) - - - - - Raised when a hash-slot has been relocated - - - - - Compute the hash-slot of a specified key - - - - - Create a new ConnectionMultiplexer instance - - - - - Create a new ConnectionMultiplexer instance - - - - - Create a new ConnectionMultiplexer instance - - - - - Create a new ConnectionMultiplexer instance - - - - - Obtain a pub/sub subscriber connection to the specified server - - - - - Obtain an interactive connection to a database inside redis - - - - - Obtain a configuration API for an individual server - - - - - Obtain a configuration API for an individual server - - - - - Obtain a configuration API for an individual server - - - - - Obtain a configuration API for an individual server - - - - - The number of operations that have been performed on all connections - - - - - Reconfigure the current connections based on the existing configuration - - - - - Reconfigure the current connections based on the existing configuration - - - - - Provides a text overview of the status of all connections - - - - - Provides a text overview of the status of all connections - - - - - See Object.ToString() - - - - - Gets or sets whether asynchronous operations should be invoked in a way that guarantees their original delivery order - - - - - Indicates whether any servers are connected - - - - - Close all connections and release all resources associated with this object - - - - - Close all connections and release all resources associated with this object - - - - - Release all resources associated with this object - - - - - Should exceptions include identifiable details? (key names, additional .Data annotations) - - - - - Should exceptions include performance counter details? (CPU usage, etc - note that this can be problematic on some platforms) - - - - - Limit at which to start recording unusual busy patterns (only one log will be retained at a time; - set to a negative value to disable this feature) - - - - - Obtains the log of unusual busy patterns - - - - - Resets the log of unusual busy patterns - - - - - Request all compatible clients to reconfigure or reconnect - - The number of instances known to have received the message (however, the actual number can be higher; returns -1 if the operation is pending) - - - - Request all compatible clients to reconfigure or reconnect - - The number of instances known to have received the message (however, the actual number can be higher) - - - - Sets an IProfiler instance for this ConnectionMultiplexer. - - An IProfiler instances is used to determine which context to associate an - IProfiledCommand with. See BeginProfiling(object) and FinishProfiling(object) - for more details. - - - - - Begins profiling for the given context. - - If the same context object is returned by the registered IProfiler, the IProfiledCommands - will be associated with each other. - - Call FinishProfiling with the same context to get the assocated commands. - - Note that forContext cannot be a WeakReference or a WeakReference<T> - - - - - Stops profiling for the given context, returns all IProfiledCommands associated. - - By default this may do a sweep for dead profiling contexts, you can disable this by passing "allowCleanupSweep: false". - - The type of a connection @@ -1487,86 +2104,6 @@ A subscriber connection recieves unsolicted messages from the server as pub/sub events occur - - - Completion type for CompletionTypeHelper - - - - - Retain original completion type (either sync or async) - - - - - Force sync completion - - - - - Force async completion - - - - - A list of endpoints - - - - - Create a new EndPointCollection - - - - - Create a new EndPointCollection - - - - - Format an endpoint - - - - - Attempt to parse a string into an EndPoint - - - - - Adds a new endpoint to the list - - - - - Adds a new endpoint to the list - - - - - Adds a new endpoint to the list - - - - - See Collection<T>.InsertItem() - - - - - See Collection<T>.SetItem() - - - - - Event information related to redis endpoints - - - - - The endpoint involved in this event (this can be null) - - When performing a range query, by default the start / stop limits are inclusive; @@ -1593,31 +2130,6 @@ Both start and stop are exclusive - - - Represents a retry policy that performs retries, using a randomized exponential back off scheme to determine the interval between retries. - - - - - Initializes a new instance using the specified back off interval with default maxDeltaBackOffMilliseconds of 10 seconds - - time in milliseconds for the back-off interval between retries - - - - Initializes a new instance using the specified back off interval. - - time in milliseconds for the back-off interval between retries - time in milliseconds for the maximum value that the back-off interval can exponentailly grow upto - - - - This method is called by the ConnectionMultiplexer to determine if a reconnect operation can be retried now. - - The number of times reconnect retries have already been made by the ConnectionMultiplexer while it was in the connecting state - Total elapsed time in milliseconds since the last reconnect retry was made - Which settings to export @@ -1653,231 +2165,6 @@ Everything available - - - Utility methods - - - - - Create a dictionary from an array of HashEntry values - - - - - Create a dictionary from an array of HashEntry values - - - - - Create a dictionary from an array of SortedSetEntry values - - - - - Create a dictionary from an array of SortedSetEntry values - - - - - Create a dictionary from an array of key/value pairs - - - - - Create a dictionary from an array of key/value pairs - - - - - Create a dictionary from an array of string pairs - - - - - Create an array of strings from an array of values - - - - - GeoRadius command options. - - - - - No Options - - - - - Redis will return the coordinates of any results. - - - - - Redis will return the distance from center for all results. - - - - - Redis will return the geo hash value as an integer. (This is the score in the sorted set) - - - - - Populates the commonly used values from the entry (the integer hash is not returned as it is not commonly useful) - - - - - The result of a GeoRadius command. - - - - - Indicate the member being represented - - - - - The matched member. - - - - - The distance of the matched member from the center of the geo radius command. - - - - - The hash value of the matched member as an integer. (The key in the sorted set) - - Note that this is not the same as the hash returned from GeoHash - - - - The coordinates of the matched member. - - - - - Returns a new GeoRadiusResult - - - - - Describes the longitude and latitude of a GeoEntry - - - - - The Latitude of the GeoPosition - - - - - The Logitude of the GeoPosition - - - - - Creates a new GeoPosition - - - - - - - See Object.ToString() - - - - - See Object.GetHashCode() - Diagonals not an issue in the case of lat/long - - - - - Compares two values for equality - - - - - Compares two values for equality - - - - - Compares two values for equality - - - - - Compares two values for non-equality - - - - - Describes a GeoEntry element with the corresponding value - GeoEntries are stored in redis as SortedSetEntries - - - - - The name of the geo entry - - - - - Describes the longitude and latitude of a GeoEntry - - - - - Initializes a GeoEntry value - - - - - The longitude of the geo entry - - - - - The latitude of the geo entry - - - - - See Object.ToString() - - - - - See Object.GetHashCode() - - - - - Compares two values for equality - - - - - Compares two values for equality - - - - - Compares two values for equality - - - - - Compares two values for non-equality - - Units associated with Geo Commands @@ -1903,3526 +2190,6 @@ Feet - - - Describes a hash-field (a name/value pair) - - - - - Initializes a HashEntry value - - - - - The name of the hash field - - - - - The value of the hash field - - - - - The name of the hash field - - - - - Converts to a key/value pair - - - - - Converts from a key/value pair - - - - - See Object.ToString() - - - - - See Object.GetHashCode() - - - - - Compares two values for equality - - - - - Compares two values for equality - - - - - Compares two values for equality - - - - - Compares two values for non-equality - - - - - Contains information about individual hash-slot relocations - - - - - The hash-slot that was relocated - - - - - The old endpoint for this hash-slot (if known) - - - - - The new endpoint for this hash-slot (if known) - - - - - Represents a block of operations that will be sent to the server together; - this can be useful to reduce packet fragmentation on slow connections - it - can improve the time to get *all* the operations processed, with the trade-off - of a slower time to get the *first* operation processed; this is usually - a good thing. Unless this batch is a transaction, there is no guarantee - that these operations will be processed either contiguously or atomically by the server. - - - - - Execute the batch operation, sending all queued commands to the server. - Note that this operation is neither synchronous nor truly asyncronous - it - simply enqueues the buffered messages. To check on completion, you should - check the individual responses. - - - - - Represents the abstract multiplexer API - - - - - Gets the client-name that will be used on all new connections - - - - - Gets the configuration of the connection - - - - - Gets the timeout associated with the connections - - - - - The number of operations that have been performed on all connections - - - - - Gets or sets whether asynchronous operations should be invoked in a way that guarantees their original delivery order - - - - - Indicates whether any servers are connected - - - - - Should exceptions include identifiable details? (key names, additional .Data annotations) - - - - - Limit at which to start recording unusual busy patterns (only one log will be retained at a time; - set to a negative value to disable this feature) - - - - - Sets an IProfiler instance for this ConnectionMultiplexer. - - An IProfiler instances is used to determine which context to associate an - IProfiledCommand with. See BeginProfiling(object) and FinishProfiling(object) - for more details. - - - - - Begins profiling for the given context. - - If the same context object is returned by the registered IProfiler, the IProfiledCommands - will be associated with each other. - - Call FinishProfiling with the same context to get the assocated commands. - - Note that forContext cannot be a WeakReference or a WeakReference<T> - - - - - Stops profiling for the given context, returns all IProfiledCommands associated. - - By default this may do a sweep for dead profiling contexts, you can disable this by passing "allowCleanupSweep: false". - - - - - Get summary statistics associates with this server - - - - - A server replied with an error message; - - - - - Raised whenever a physical connection fails - - - - - Raised whenever an internal error occurs (this is primarily for debugging) - - - - - Raised whenever a physical connection is established - - - - - Raised when configuration changes are detected - - - - - Raised when nodes are explicitly requested to reconfigure via broadcast; - this usually means master/slave changes - - - - - Gets all endpoints defined on the server - - - - - - Wait for a given asynchronous operation to complete (or timeout) - - - - - Wait for a given asynchronous operation to complete (or timeout) - - - - - Wait for the given asynchronous operations to complete (or timeout) - - - - - Raised when a hash-slot has been relocated - - - - - Compute the hash-slot of a specified key - - - - - Obtain a pub/sub subscriber connection to the specified server - - - - - Obtain an interactive connection to a database inside redis - - - - - Obtain a configuration API for an individual server - - - - - Obtain a configuration API for an individual server - - - - - Obtain a configuration API for an individual server - - - - - Obtain a configuration API for an individual server - - - - - Reconfigure the current connections based on the existing configuration - - - - - Reconfigure the current connections based on the existing configuration - - - - - Provides a text overview of the status of all connections - - - - - Provides a text overview of the status of all connections - - - - - See Object.ToString() - - - - - Close all connections and release all resources associated with this object - - - - - Close all connections and release all resources associated with this object - - - - - Release all resources associated with this object - - - - - Obtains the log of unusual busy patterns - - - - - Resets the log of unusual busy patterns - - - - - Request all compatible clients to reconfigure or reconnect - - The number of instances known to have received the message (however, the actual number can be higher; returns -1 if the operation is pending) - - - - Request all compatible clients to reconfigure or reconnect - - The number of instances known to have received the message (however, the actual number can be higher) - - - - Describes functionality that is common to both standalone redis servers and redis clusters - - - - - The numeric identifier of this database - - - - - Allows creation of a group of operations that will be sent to the server as a single unit, - but which may or may not be processed on the server contiguously. - - - - - Atomically transfer a key from a source Redis instance to a destination Redis instance. On success the key is deleted from the original instance by default, and is guaranteed to exist in the target instance. - - http://redis.io/commands/MIGRATE - - - - Allows creation of a group of operations that will be sent to the server as a single unit, - and processed on the server as a single unit. - - - - - Returns the raw DEBUG OBJECT output for a key; this command is not fully documented and should be avoided unless you have good reason, and then avoided anyway. - - http://redis.io/commands/debug-object - - - - Add the specified member to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members. - - True if the specified member was not already present in the set, else False - http://redis.io/commands/geoadd - - - - Add the specified member to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members. - - True if the specified member was not already present in the set, else False - http://redis.io/commands/geoadd - - - - Add the specified members to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members. - - the number of elements that were added to the set, not including all the elements already present into the set. - http://redis.io/commands/geoadd - - - - Removes the specified member from the geo sorted set stored at key. Non existing members are ignored. - - True if the member existed in the sorted set and was removed; False otherwise. - http://redis.io/commands/zrem - - - - Return the distance between two members in the geospatial index represented by the sorted set. - - The command returns the distance as a double (represented as a string) in the specified unit, or NULL if one or both the elements are missing. - http://redis.io/commands/geodist - - - - Return valid Geohash strings representing the position of one or more elements in a sorted set value representing a geospatial index (where elements were added using GEOADD). - - The command returns an array where each element is the Geohash corresponding to each member name passed as argument to the command. - http://redis.io/commands/geohash - - - - Return valid Geohash strings representing the position of one or more elements in a sorted set value representing a geospatial index (where elements were added using GEOADD). - - The command returns an array where each element is the Geohash corresponding to each member name passed as argument to the command. - http://redis.io/commands/geohash - - - - Return the positions (longitude,latitude) of all the specified members of the geospatial index represented by the sorted set at key. - - The command returns an array where each element is a two elements array representing longitude and latitude (x,y) of each member name passed as argument to the command.Non existing elements are reported as NULL elements of the array. - http://redis.io/commands/geopos - - - - Return the positions (longitude,latitude) of all the specified members of the geospatial index represented by the sorted set at key. - - The command returns an array where each element is a two elements array representing longitude and latitude (x,y) of each member name passed as argument to the command.Non existing elements are reported as NULL elements of the array. - http://redis.io/commands/geopos - - - - Return the members of a sorted set populated with geospatial information using GEOADD, which are within the borders of the area specified with the center location and the maximum distance from the center (the radius). - - GeoRadiusResult[] - http://redis.io/commands/georadius - - - - Return the members of a sorted set populated with geospatial information using GEOADD, which are within the borders of the area specified with the center location and the maximum distance from the center (the radius). - - GeoRadiusResult[] - http://redis.io/commands/georadius - - - - Decrements the number stored at field in the hash stored at key by decrement. If key does not exist, a new key holding a hash is created. If field does not exist or holds a string that cannot be interpreted as integer, the value is set to 0 before the operation is performed. - - The range of values supported by HINCRBY is limited to 64 bit signed integers. - the value at field after the decrement operation. - http://redis.io/commands/hincrby - - - - Decrement the specified field of an hash stored at key, and representing a floating point number, by the specified decrement. If the field does not exist, it is set to 0 before performing the operation. - - The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation. - the value at field after the decrement operation. - http://redis.io/commands/hincrbyfloat - - - - Removes the specified fields from the hash stored at key. Non-existing fields are ignored. Non-existing keys are treated as empty hashes and this command returns 0. - - http://redis.io/commands/hdel - The number of fields that were removed. - - - - Removes the specified fields from the hash stored at key. Non-existing fields are ignored. Non-existing keys are treated as empty hashes and this command returns 0. - - http://redis.io/commands/hdel - The number of fields that were removed. - - - - Returns if field is an existing field in the hash stored at key. - - 1 if the hash contains field. 0 if the hash does not contain field, or key does not exist. - http://redis.io/commands/hexists - - - - Returns the value associated with field in the hash stored at key. - - the value associated with field, or nil when field is not present in the hash or key does not exist. - http://redis.io/commands/hget - - - - Returns the values associated with the specified fields in the hash stored at key. - For every field that does not exist in the hash, a nil value is returned.Because a non-existing keys are treated as empty hashes, running HMGET against a non-existing key will return a list of nil values. - - list of values associated with the given fields, in the same order as they are requested. - http://redis.io/commands/hmget - - - - Returns all fields and values of the hash stored at key. - - list of fields and their values stored in the hash, or an empty list when key does not exist. - http://redis.io/commands/hgetall - - - - Increments the number stored at field in the hash stored at key by increment. If key does not exist, a new key holding a hash is created. If field does not exist or holds a string that cannot be interpreted as integer, the value is set to 0 before the operation is performed. - - The range of values supported by HINCRBY is limited to 64 bit signed integers. - the value at field after the increment operation. - http://redis.io/commands/hincrby - - - - Increment the specified field of an hash stored at key, and representing a floating point number, by the specified increment. If the field does not exist, it is set to 0 before performing the operation. - - The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation. - the value at field after the increment operation. - http://redis.io/commands/hincrbyfloat - - - - Returns all field names in the hash stored at key. - - list of fields in the hash, or an empty list when key does not exist. - http://redis.io/commands/hkeys - - - - Returns the number of fields contained in the hash stored at key. - - number of fields in the hash, or 0 when key does not exist. - http://redis.io/commands/hlen - - - - The HSCAN command is used to incrementally iterate over a hash - - yields all elements of the hash. - http://redis.io/commands/hscan - - - - The HSCAN command is used to incrementally iterate over a hash; note: to resume an iteration via cursor, cast the original enumerable or enumerator to IScanningCursor. - - yields all elements of the hash. - http://redis.io/commands/hscan - - - - Sets the specified fields to their respective values in the hash stored at key. This command overwrites any existing fields in the hash. If key does not exist, a new key holding a hash is created. - - http://redis.io/commands/hmset - - - - Sets field in the hash stored at key to value. If key does not exist, a new key holding a hash is created. If field already exists in the hash, it is overwritten. - - 1 if field is a new field in the hash and value was set. 0 if field already exists in the hash and the value was updated. - http://redis.io/commands/hset - http://redis.io/commands/hsetnx - - - - Returns all values in the hash stored at key. - - list of values in the hash, or an empty list when key does not exist. - http://redis.io/commands/hvals - - - - Adds the element to the HyperLogLog data structure stored at the variable name specified as first argument. - - true if at least 1 HyperLogLog internal register was altered. false otherwise. - http://redis.io/commands/pfadd - - - - Adds all the element arguments to the HyperLogLog data structure stored at the variable name specified as first argument. - - true if at least 1 HyperLogLog internal register was altered. false otherwise. - http://redis.io/commands/pfadd - - - - Returns the approximated cardinality computed by the HyperLogLog data structure stored at the specified variable, or 0 if the variable does not exist. - - The approximated number of unique elements observed via HyperLogLogAdd. - http://redis.io/commands/pfcount - - - - Returns the approximated cardinality of the union of the HyperLogLogs passed, by internally merging the HyperLogLogs stored at the provided keys into a temporary hyperLogLog, or 0 if the variable does not exist. - - The approximated number of unique elements observed via HyperLogLogAdd. - http://redis.io/commands/pfcount - - - - Merge multiple HyperLogLog values into an unique value that will approximate the cardinality of the union of the observed Sets of the source HyperLogLog structures. - - http://redis.io/commands/pfmerge - - - - Merge multiple HyperLogLog values into an unique value that will approximate the cardinality of the union of the observed Sets of the source HyperLogLog structures. - - http://redis.io/commands/pfmerge - - - - Inidicate exactly which redis server we are talking to - - - - - Removes the specified key. A key is ignored if it does not exist. - - True if the key was removed. - http://redis.io/commands/del - - - - Removes the specified keys. A key is ignored if it does not exist. - - The number of keys that were removed. - http://redis.io/commands/del - - - - Serialize the value stored at key in a Redis-specific format and return it to the user. The returned value can be synthesized back into a Redis key using the RESTORE command. - - the serialized value. - http://redis.io/commands/dump - - - - Returns if key exists. - - 1 if the key exists. 0 if the key does not exist. - http://redis.io/commands/exists - - - - Set a timeout on key. After the timeout has expired, the key will automatically be deleted. A key with an associated timeout is said to be volatile in Redis terminology. - - If key is updated before the timeout has expired, then the timeout is removed as if the PERSIST command was invoked on key. - For Redis versions < 2.1.3, existing timeouts cannot be overwritten. So, if key already has an associated timeout, it will do nothing and return 0. Since Redis 2.1.3, you can update the timeout of a key. It is also possible to remove the timeout using the PERSIST command. See the page on key expiry for more information. - 1 if the timeout was set. 0 if key does not exist or the timeout could not be set. - http://redis.io/commands/expire - http://redis.io/commands/pexpire - http://redis.io/commands/persist - - - - Set a timeout on key. After the timeout has expired, the key will automatically be deleted. A key with an associated timeout is said to be volatile in Redis terminology. - - If key is updated before the timeout has expired, then the timeout is removed as if the PERSIST command was invoked on key. - For Redis versions < 2.1.3, existing timeouts cannot be overwritten. So, if key already has an associated timeout, it will do nothing and return 0. Since Redis 2.1.3, you can update the timeout of a key. It is also possible to remove the timeout using the PERSIST command. See the page on key expiry for more information. - 1 if the timeout was set. 0 if key does not exist or the timeout could not be set. - http://redis.io/commands/expireat - http://redis.io/commands/pexpireat - http://redis.io/commands/persist - - - - Move key from the currently selected database (see SELECT) to the specified destination database. When key already exists in the destination database, or it does not exist in the source database, it does nothing. It is possible to use MOVE as a locking primitive because of this. - - 1 if key was moved; 0 if key was not moved. - http://redis.io/commands/move - - - Remove the existing timeout on key, turning the key from volatile (a key with an expire set) to persistent (a key that will never expire as no timeout is associated). - 1 if the timeout was removed. 0 if key does not exist or does not have an associated timeout. - http://redis.io/commands/persist - - - - Return a random key from the currently selected database. - - the random key, or nil when the database is empty. - http://redis.io/commands/randomkey - - - - Renames key to newkey. It returns an error when the source and destination names are the same, or when key does not exist. - - http://redis.io/commands/rename - http://redis.io/commands/renamenx - - - - Create a key associated with a value that is obtained by deserializing the provided serialized value (obtained via DUMP). - If ttl is 0 the key is created without any expire, otherwise the specified expire time(in milliseconds) is set. - - http://redis.io/commands/restore - - - - Returns the remaining time to live of a key that has a timeout. This introspection capability allows a Redis client to check how many seconds a given key will continue to be part of the dataset. - - TTL, or nil when key does not exist or does not have a timeout. - http://redis.io/commands/ttl - - - - Returns the string representation of the type of the value stored at key. The different types that can be returned are: string, list, set, zset and hash. - - type of key, or none when key does not exist. - http://redis.io/commands/type - - - - Returns the element at index index in the list stored at key. The index is zero-based, so 0 means the first element, 1 the second element and so on. Negative indices can be used to designate elements starting at the tail of the list. Here, -1 means the last element, -2 means the penultimate and so forth. - - the requested element, or nil when index is out of range. - http://redis.io/commands/lindex - - - - Inserts value in the list stored at key either before or after the reference value pivot. - When key does not exist, it is considered an empty list and no operation is performed. - - the length of the list after the insert operation, or -1 when the value pivot was not found. - http://redis.io/commands/linsert - - - - Inserts value in the list stored at key either before or after the reference value pivot. - When key does not exist, it is considered an empty list and no operation is performed. - - the length of the list after the insert operation, or -1 when the value pivot was not found. - http://redis.io/commands/linsert - - - - Removes and returns the first element of the list stored at key. - - the value of the first element, or nil when key does not exist. - http://redis.io/commands/lpop - - - - Insert the specified value at the head of the list stored at key. If key does not exist, it is created as empty list before performing the push operations. - - the length of the list after the push operations. - http://redis.io/commands/lpush - http://redis.io/commands/lpushx - - - - Insert all the specified values at the head of the list stored at key. If key does not exist, it is created as empty list before performing the push operations. - Elements are inserted one after the other to the head of the list, from the leftmost element to the rightmost element. So for instance the command LPUSH mylist a b c will result into a list containing c as first element, b as second element and a as third element. - - the length of the list after the push operations. - http://redis.io/commands/lpush - - - - Returns the length of the list stored at key. If key does not exist, it is interpreted as an empty list and 0 is returned. - - the length of the list at key. - http://redis.io/commands/llen - - - - Returns the specified elements of the list stored at key. The offsets start and stop are zero-based indexes, with 0 being the first element of the list (the head of the list), 1 being the next element and so on. - These offsets can also be negative numbers indicating offsets starting at the end of the list.For example, -1 is the last element of the list, -2 the penultimate, and so on. - Note that if you have a list of numbers from 0 to 100, LRANGE list 0 10 will return 11 elements, that is, the rightmost item is included. - - list of elements in the specified range. - http://redis.io/commands/lrange - - - - Removes the first count occurrences of elements equal to value from the list stored at key. The count argument influences the operation in the following ways: - count > 0: Remove elements equal to value moving from head to tail. - count < 0: Remove elements equal to value moving from tail to head. - count = 0: Remove all elements equal to value. - - the number of removed elements. - http://redis.io/commands/lrem - - - - Removes and returns the last element of the list stored at key. - - http://redis.io/commands/rpop - - - - Atomically returns and removes the last element (tail) of the list stored at source, and pushes the element at the first element (head) of the list stored at destination. - - the element being popped and pushed. - http://redis.io/commands/rpoplpush - - - - Insert the specified value at the tail of the list stored at key. If key does not exist, it is created as empty list before performing the push operation. - - the length of the list after the push operation. - http://redis.io/commands/rpush - http://redis.io/commands/rpushx - - - - Insert all the specified values at the tail of the list stored at key. If key does not exist, it is created as empty list before performing the push operation. - Elements are inserted one after the other to the tail of the list, from the leftmost element to the rightmost element. So for instance the command RPUSH mylist a b c will result into a list containing a as first element, b as second element and c as third element. - - the length of the list after the push operation. - http://redis.io/commands/rpush - - - - Sets the list element at index to value. For more information on the index argument, see ListGetByIndex. An error is returned for out of range indexes. - - http://redis.io/commands/lset - - - - Trim an existing list so that it will contain only the specified range of elements specified. Both start and stop are zero-based indexes, where 0 is the first element of the list (the head), 1 the next element and so on. - For example: LTRIM foobar 0 2 will modify the list stored at foobar so that only the first three elements of the list will remain. - start and end can also be negative numbers indicating offsets from the end of the list, where -1 is the last element of the list, -2 the penultimate element and so on. - - http://redis.io/commands/ltrim - - - - Extends a lock, if the token value is correct - - - - - Queries the token held against a lock - - - - - Releases a lock, if the token value is correct - - - - - Takes a lock (specifying a token value) if it is not already taken - - - - - Posts a message to the given channel. - - the number of clients that received the message. - http://redis.io/commands/publish - - - - Execute an arbitrary command against the server; this is primarily intended for - executing modules, but may also be used to provide access to new features that lack - a direct API - - A dynamic representation of the command's result - - - - Execute an arbitrary command against the server; this is primarily intended for - executing modules, but may also be used to provide access to new features that lack - a direct API - - A dynamic representation of the command's result - - - - Execute a Lua script against the server - - http://redis.io/commands/eval, http://redis.io/commands/evalsha - A dynamic representation of the script's result - - - - Execute a Lua script against the server using just the SHA1 hash - - http://redis.io/commands/evalsha - A dynamic representation of the script's result - - - - Execute a lua script against the server, using previously prepared script. - Named parameters, if any, are provided by the `parameters` object. - - - - - Execute a lua script against the server, using previously prepared and loaded script. - This method sends only the SHA1 hash of the lua script to Redis. - Named parameters, if any, are provided by the `parameters` object. - - - - - Add the specified member to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members. - - True if the specified member was not already present in the set, else False - http://redis.io/commands/sadd - - - - Add the specified members to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members. - - the number of elements that were added to the set, not including all the elements already present into the set. - http://redis.io/commands/sadd - - - - Returns the members of the set resulting from the specified operation against the given sets. - - list with members of the resulting set. - http://redis.io/commands/sunion - http://redis.io/commands/sinter - http://redis.io/commands/sdiff - - - - Returns the members of the set resulting from the specified operation against the given sets. - - list with members of the resulting set. - http://redis.io/commands/sunion - http://redis.io/commands/sinter - http://redis.io/commands/sdiff - - - - This command is equal to SetCombine, but instead of returning the resulting set, it is stored in destination. If destination already exists, it is overwritten. - - the number of elements in the resulting set. - http://redis.io/commands/sunionstore - http://redis.io/commands/sinterstore - http://redis.io/commands/sdiffstore - - - - This command is equal to SetCombine, but instead of returning the resulting set, it is stored in destination. If destination already exists, it is overwritten. - - the number of elements in the resulting set. - http://redis.io/commands/sunionstore - http://redis.io/commands/sinterstore - http://redis.io/commands/sdiffstore - - - - Returns if member is a member of the set stored at key. - - 1 if the element is a member of the set. 0 if the element is not a member of the set, or if key does not exist. - http://redis.io/commands/sismember - - - - Returns the set cardinality (number of elements) of the set stored at key. - - the cardinality (number of elements) of the set, or 0 if key does not exist. - http://redis.io/commands/scard - - - - Returns all the members of the set value stored at key. - - all elements of the set. - http://redis.io/commands/smembers - - - - Move member from the set at source to the set at destination. This operation is atomic. In every given moment the element will appear to be a member of source or destination for other clients. - When the specified element already exists in the destination set, it is only removed from the source set. - - 1 if the element is moved. 0 if the element is not a member of source and no operation was performed. - http://redis.io/commands/smove - - - - Removes and returns a random element from the set value stored at key. - - the removed element, or nil when key does not exist. - http://redis.io/commands/spop - - - - Return a random element from the set value stored at key. - - the randomly selected element, or nil when key does not exist - http://redis.io/commands/srandmember - - - - Return an array of count distinct elements if count is positive. If called with a negative count the behavior changes and the command is allowed to return the same element multiple times. - In this case the numer of returned elements is the absolute value of the specified count. - - an array of elements, or an empty array when key does not exist - http://redis.io/commands/srandmember - - - - Remove the specified member from the set stored at key. Specified members that are not a member of this set are ignored. - - True if the specified member was already present in the set, else False - http://redis.io/commands/srem - - - - Remove the specified members from the set stored at key. Specified members that are not a member of this set are ignored. - - the number of members that were removed from the set, not including non existing members. - http://redis.io/commands/srem - - - - The SSCAN command is used to incrementally iterate over set - - yields all elements of the set. - http://redis.io/commands/sscan - - - - The SSCAN command is used to incrementally iterate over set; note: to resume an iteration via cursor, cast the original enumerable or enumerator to IScanningCursor. - - yields all elements of the set. - http://redis.io/commands/sscan - - - - Sorts a list, set or sorted set (numerically or alphabetically, ascending by default); By default, the elements themselves are compared, but the values can also be - used to perform external key-lookups using the by parameter. By default, the elements themselves are returned, but external key-lookups (one or many) can - be performed instead by specifying the get parameter (note that # specifies the element itself, when used in get). - Referring to the redis SORT documentation for examples is recommended. When used in hashes, by and get - can be used to specify fields using -> notation (again, refer to redis documentation). - - http://redis.io/commands/sort - Returns the sorted elements, or the external values if get is specified - - - - Sorts a list, set or sorted set (numerically or alphabetically, ascending by default); By default, the elements themselves are compared, but the values can also be - used to perform external key-lookups using the by parameter. By default, the elements themselves are returned, but external key-lookups (one or many) can - be performed instead by specifying the get parameter (note that # specifies the element itself, when used in get). - Referring to the redis SORT documentation for examples is recommended. When used in hashes, by and get - can be used to specify fields using -> notation (again, refer to redis documentation). - - http://redis.io/commands/sort - Returns the number of elements stored in the new list - - - - Adds the specified member with the specified score to the sorted set stored at key. If the specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering. - - True if the value was added, False if it already existed (the score is still updated) - http://redis.io/commands/zadd - - - - Adds the specified member with the specified score to the sorted set stored at key. If the specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering. - - True if the value was added, False if it already existed (the score is still updated) - http://redis.io/commands/zadd - - - - Adds all the specified members with the specified scores to the sorted set stored at key. If a specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering. - - The number of elements added to the sorted sets, not including elements already existing for which the score was updated. - http://redis.io/commands/zadd - - - - Adds all the specified members with the specified scores to the sorted set stored at key. If a specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering. - - The number of elements added to the sorted sets, not including elements already existing for which the score was updated. - http://redis.io/commands/zadd - - - - Computes a set operation over two sorted sets, and stores the result in destination, optionally performing - a specific aggregation (defaults to sum) - - http://redis.io/commands/zunionstore - http://redis.io/commands/zinterstore - the number of elements in the resulting sorted set at destination - - - - Computes a set operation over multiple sorted sets (optionally using per-set weights), and stores the result in destination, optionally performing - a specific aggregation (defaults to sum) - - http://redis.io/commands/zunionstore - http://redis.io/commands/zinterstore - the number of elements in the resulting sorted set at destination - - - - Decrements the score of member in the sorted set stored at key by decrement. If member does not exist in the sorted set, it is added with -decrement as its score (as if its previous score was 0.0). - - the new score of member - http://redis.io/commands/zincrby - - - - Increments the score of member in the sorted set stored at key by increment. If member does not exist in the sorted set, it is added with increment as its score (as if its previous score was 0.0). - - the new score of member - http://redis.io/commands/zincrby - - - - Returns the sorted set cardinality (number of elements) of the sorted set stored at key. - - the cardinality (number of elements) of the sorted set, or 0 if key does not exist. - http://redis.io/commands/zcard - - - - When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command returns the number of elements in the sorted set at key with a value between min and max. - - the number of elements in the specified score range. - When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command returns all the elements in the sorted set at key with a value between min and max. - - - - Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score. - Both start and stop are zero-based indexes, where 0 is the first element, 1 is the next element and so on. They can also be negative numbers indicating offsets from the end of the sorted set, with -1 being the last element of the sorted set, -2 the penultimate element and so on. - - list of elements in the specified range - http://redis.io/commands/zrange - http://redis.io/commands/zrevrange - - - - Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score. - Both start and stop are zero-based indexes, where 0 is the first element, 1 is the next element and so on. They can also be negative numbers indicating offsets from the end of the sorted set, with -1 being the last element of the sorted set, -2 the penultimate element and so on. - - list of elements in the specified range - http://redis.io/commands/zrange - http://redis.io/commands/zrevrange - - - - Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score. - Start and stop are used to specify the min and max range for score values. Similar to other range methods the values are inclusive. - - list of elements in the specified score range - http://redis.io/commands/zrangebyscore - http://redis.io/commands/zrevrangebyscore - - - - Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score. - Start and stop are used to specify the min and max range for score values. Similar to other range methods the values are inclusive. - - list of elements in the specified score range - http://redis.io/commands/zrangebyscore - http://redis.io/commands/zrevrangebyscore - - - - When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command returns all the elements in the sorted set at key with a value between min and max. - - http://redis.io/commands/zrangebylex - list of elements in the specified score range. - - - - Returns the rank of member in the sorted set stored at key, by default with the scores ordered from low to high. The rank (or index) is 0-based, which means that the member with the lowest score has rank 0. - - If member exists in the sorted set, the rank of member; If member does not exist in the sorted set or key does not exist, null - http://redis.io/commands/zrank - http://redis.io/commands/zrevrank - - - - Removes the specified member from the sorted set stored at key. Non existing members are ignored. - - True if the member existed in the sorted set and was removed; False otherwise. - http://redis.io/commands/zrem - - - - Removes the specified members from the sorted set stored at key. Non existing members are ignored. - - The number of members removed from the sorted set, not including non existing members. - http://redis.io/commands/zrem - - - - Removes all elements in the sorted set stored at key with rank between start and stop. Both start and stop are 0 -based indexes with 0 being the element with the lowest score. These indexes can be negative numbers, where they indicate offsets starting at the element with the highest score. For example: -1 is the element with the highest score, -2 the element with the second highest score and so forth. - - the number of elements removed. - http://redis.io/commands/zremrangebyrank - - - - Removes all elements in the sorted set stored at key with a score between min and max (inclusive by default). - - the number of elements removed. - http://redis.io/commands/zremrangebyscore - - - - When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command removes all elements in the sorted set stored at key between the lexicographical range specified by min and max. - - http://redis.io/commands/zremrangebylex - the number of elements removed. - - - - The ZSCAN command is used to incrementally iterate over a sorted set - - yields all elements of the sorted set. - http://redis.io/commands/zscan - - - - The ZSCAN command is used to incrementally iterate over a sorted set; note: to resume an iteration via cursor, cast the original enumerable or enumerator to IScanningCursor. - - yields all elements of the sorted set. - http://redis.io/commands/zscan - - - - Returns the score of member in the sorted set at key; If member does not exist in the sorted set, or key does not exist, nil is returned. - - the score of member - http://redis.io/commands/zscore - - - - If key already exists and is a string, this command appends the value at the end of the string. If key does not exist it is created and set as an empty string, - so APPEND will be similar to SET in this special case. - - the length of the string after the append operation. - http://redis.io/commands/append - - - - Count the number of set bits (population counting) in a string. - By default all the bytes contained in the string are examined.It is possible to specify the counting operation only in an interval passing the additional arguments start and end. - Like for the GETRANGE command start and end can contain negative values in order to index bytes starting from the end of the string, where -1 is the last byte, -2 is the penultimate, and so forth. - - The number of bits set to 1 - http://redis.io/commands/bitcount - - - - Perform a bitwise operation between multiple keys (containing string values) and store the result in the destination key. - The BITOP command supports four bitwise operations; note that NOT is a unary operator: the second key should be omitted in this case - and only the first key will be considered. - The result of the operation is always stored at destkey. - - The size of the string stored in the destination key, that is equal to the size of the longest input string. - http://redis.io/commands/bitop - - - - Perform a bitwise operation between multiple keys (containing string values) and store the result in the destination key. - The BITOP command supports four bitwise operations; note that NOT is a unary operator. - The result of the operation is always stored at destkey. - - The size of the string stored in the destination key, that is equal to the size of the longest input string. - http://redis.io/commands/bitop - - - - Return the position of the first bit set to 1 or 0 in a string. - The position is returned thinking at the string as an array of bits from left to right where the first byte most significant bit is at position 0, the second byte most significant bit is at position 8 and so forth. - An start and end may be specified; these are in bytes, not bits; start and end can contain negative values in order to index bytes starting from the end of the string, where -1 is the last byte, -2 is the penultimate, and so forth. - - The command returns the position of the first bit set to 1 or 0 according to the request. - If we look for set bits(the bit argument is 1) and the string is empty or composed of just zero bytes, -1 is returned. - http://redis.io/commands/bitpos - - - - Decrements the number stored at key by decrement. If the key does not exist, it is set to 0 before performing the operation. - An error is returned if the key contains a value of the wrong type or contains a string that is not representable as integer. This operation is limited to 64 bit signed integers. - - the value of key after the decrement - http://redis.io/commands/decrby - http://redis.io/commands/decr - - - - Decrements the string representing a floating point number stored at key by the specified decrement. If the key does not exist, it is set to 0 before performing the operation. The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation. - - the value of key after the decrement - http://redis.io/commands/incrbyfloat - - - - Get the value of key. If the key does not exist the special value nil is returned. An error is returned if the value stored at key is not a string, because GET only handles string values. - - the value of key, or nil when key does not exist. - http://redis.io/commands/get - - - - Returns the values of all specified keys. For every key that does not hold a string value or does not exist, the special value nil is returned. - - http://redis.io/commands/mget - - - - Returns the bit value at offset in the string value stored at key. - When offset is beyond the string length, the string is assumed to be a contiguous space with 0 bits. - - the bit value stored at offset. - http://redis.io/commands/getbit - - - - Returns the substring of the string value stored at key, determined by the offsets start and end (both are inclusive). Negative offsets can be used in order to provide an offset starting from the end of the string. So -1 means the last character, -2 the penultimate and so forth. - - the substring of the string value stored at key - http://redis.io/commands/getrange - - - - Atomically sets key to value and returns the old value stored at key. - - http://redis.io/commands/getset - the old value stored at key, or nil when key did not exist. - - - - Get the value of key. If the key does not exist the special value nil is returned. An error is returned if the value stored at key is not a string, because GET only handles string values. - - the value of key, or nil when key does not exist. - http://redis.io/commands/get - - - - Increments the number stored at key by increment. If the key does not exist, it is set to 0 before performing the operation. An error is returned if the key contains a value of the wrong type or contains a string that is not representable as integer. This operation is limited to 64 bit signed integers. - - the value of key after the increment - http://redis.io/commands/incrby - http://redis.io/commands/incr - - - - Increments the string representing a floating point number stored at key by the specified increment. If the key does not exist, it is set to 0 before performing the operation. The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation. - - the value of key after the increment - http://redis.io/commands/incrbyfloat - - - - Returns the length of the string value stored at key. - - the length of the string at key, or 0 when key does not exist. - http://redis.io/commands/strlen - - - - Set key to hold the string value. If key already holds a value, it is overwritten, regardless of its type. - - http://redis.io/commands/set - - - - Sets the given keys to their respective values. If "not exists" is specified, this will not perform any operation at all even if just a single key already exists. - - True if the keys were set, else False - http://redis.io/commands/mset - http://redis.io/commands/msetnx - - - - Sets or clears the bit at offset in the string value stored at key. - The bit is either set or cleared depending on value, which can be either 0 or 1. When key does not exist, a new string value is created.The string is grown to make sure it can hold a bit at offset. - - the original bit value stored at offset. - http://redis.io/commands/setbit - - - - Overwrites part of the string stored at key, starting at the specified offset, for the entire length of value. If the offset is larger than the current length of the string at key, the string is padded with zero-bytes to make offset fit. Non-existing keys are considered as empty strings, so this command will make sure it holds a string large enough to be able to set value at offset. - - the length of the string after it was modified by the command. - http://redis.io/commands/setrange - - - - Describes functionality that is common to both standalone redis servers and redis clusters - - - - - Returns the raw DEBUG OBJECT output for a key; this command is not fully documented and should be avoided unless you have good reason, and then avoided anyway. - - http://redis.io/commands/debug-object - - - - Add the specified member to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members. - - True if the specified member was not already present in the set, else False - http://redis.io/commands/geoadd - - - - Add the specified member to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members. - - True if the specified member was not already present in the set, else False - http://redis.io/commands/geoadd - - - - Add the specified members to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members. - - the number of elements that were added to the set, not including all the elements already present into the set. - http://redis.io/commands/geoadd - - - - Removes the specified member from the geo sorted set stored at key. Non existing members are ignored. - - True if the member existed in the sorted set and was removed; False otherwise. - http://redis.io/commands/zrem - - - - Return the distance between two members in the geospatial index represented by the sorted set. - - The command returns the distance as a double (represented as a string) in the specified unit, or NULL if one or both the elements are missing. - http://redis.io/commands/geodist - - - - Return valid Geohash strings representing the position of one or more elements in a sorted set value representing a geospatial index (where elements were added using GEOADD). - - The command returns an array where each element is the Geohash corresponding to each member name passed as argument to the command. - http://redis.io/commands/geohash - - - - Return valid Geohash strings representing the position of one or more elements in a sorted set value representing a geospatial index (where elements were added using GEOADD). - - The command returns an array where each element is the Geohash corresponding to each member name passed as argument to the command. - http://redis.io/commands/geohash - - - - Return the positions (longitude,latitude) of all the specified members of the geospatial index represented by the sorted set at key. - - The command returns an array where each element is a two elements array representing longitude and latitude (x,y) of each member name passed as argument to the command.Non existing elements are reported as NULL elements of the array. - http://redis.io/commands/geopos - - - - Return the positions (longitude,latitude) of all the specified members of the geospatial index represented by the sorted set at key. - - The command returns an array where each element is a two elements array representing longitude and latitude (x,y) of each member name passed as argument to the command.Non existing elements are reported as NULL elements of the array. - http://redis.io/commands/geopos - - - - Return the members of a sorted set populated with geospatial information using GEOADD, which are within the borders of the area specified with the center location and the maximum distance from the center (the radius). - - GeoRadiusResult[] - http://redis.io/commands/georadius - - - - Return the members of a sorted set populated with geospatial information using GEOADD, which are within the borders of the area specified with the center location and the maximum distance from the center (the radius). - - GeoRadiusResult[] - http://redis.io/commands/georadius - - - - Increments the number stored at field in the hash stored at key by increment. If key does not exist, a new key holding a hash is created. If field does not exist or holds a string that cannot be interpreted as integer, the value is set to 0 before the operation is performed. - - The range of values supported by HINCRBY is limited to 64 bit signed integers. - the value at field after the increment operation. - http://redis.io/commands/hincrby - - - - Decrement the specified field of an hash stored at key, and representing a floating point number, by the specified decrement. If the field does not exist, it is set to 0 before performing the operation. - - The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation. - the value at field after the decrement operation. - http://redis.io/commands/hincrbyfloat - - - - Removes the specified fields from the hash stored at key. Non-existing fields are ignored. Non-existing keys are treated as empty hashes and this command returns 0. - - http://redis.io/commands/hdel - The number of fields that were removed. - - - - Removes the specified fields from the hash stored at key. Non-existing fields are ignored. Non-existing keys are treated as empty hashes and this command returns 0. - - http://redis.io/commands/hdel - The number of fields that were removed. - - - - Returns if field is an existing field in the hash stored at key. - - 1 if the hash contains field. 0 if the hash does not contain field, or key does not exist. - http://redis.io/commands/hexists - - - - Returns all fields and values of the hash stored at key. - - list of fields and their values stored in the hash, or an empty list when key does not exist. - http://redis.io/commands/hgetall - - - - Returns the value associated with field in the hash stored at key. - - the value associated with field, or nil when field is not present in the hash or key does not exist. - http://redis.io/commands/hget - - - - Returns the values associated with the specified fields in the hash stored at key. - For every field that does not exist in the hash, a nil value is returned.Because a non-existing keys are treated as empty hashes, running HMGET against a non-existing key will return a list of nil values. - - list of values associated with the given fields, in the same order as they are requested. - http://redis.io/commands/hmget - - - - Increments the number stored at field in the hash stored at key by increment. If key does not exist, a new key holding a hash is created. If field does not exist or holds a string that cannot be interpreted as integer, the value is set to 0 before the operation is performed. - - The range of values supported by HINCRBY is limited to 64 bit signed integers. - the value at field after the increment operation. - http://redis.io/commands/hincrby - - - - Increment the specified field of an hash stored at key, and representing a floating point number, by the specified increment. If the field does not exist, it is set to 0 before performing the operation. - - The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation. - the value at field after the increment operation. - http://redis.io/commands/hincrbyfloat - - - - Returns all field names in the hash stored at key. - - list of fields in the hash, or an empty list when key does not exist. - http://redis.io/commands/hkeys - - - - Returns the number of fields contained in the hash stored at key. - - number of fields in the hash, or 0 when key does not exist. - http://redis.io/commands/hlen - - - - Sets the specified fields to their respective values in the hash stored at key. This command overwrites any existing fields in the hash. If key does not exist, a new key holding a hash is created. - - http://redis.io/commands/hmset - - - - Sets field in the hash stored at key to value. If key does not exist, a new key holding a hash is created. If field already exists in the hash, it is overwritten. - - 1 if field is a new field in the hash and value was set. 0 if field already exists in the hash and the value was updated. - http://redis.io/commands/hset - http://redis.io/commands/hsetnx - - - - Returns all values in the hash stored at key. - - list of values in the hash, or an empty list when key does not exist. - http://redis.io/commands/hvals - - - - Adds the element to the HyperLogLog data structure stored at the variable name specified as first argument. - - true if at least 1 HyperLogLog internal register was altered. false otherwise. - http://redis.io/commands/pfadd - - - - Adds all the element arguments to the HyperLogLog data structure stored at the variable name specified as first argument. - - true if at least 1 HyperLogLog internal register was altered. false otherwise. - http://redis.io/commands/pfadd - - - - Returns the approximated cardinality computed by the HyperLogLog data structure stored at the specified variable, or 0 if the variable does not exist. - - The approximated number of unique elements observed via HyperLogLogAdd. - http://redis.io/commands/pfcount - - - - Returns the approximated cardinality of the union of the HyperLogLogs passed, by internally merging the HyperLogLogs stored at the provided keys into a temporary hyperLogLog, or 0 if the variable does not exist. - - The approximated number of unique elements observed via HyperLogLogAdd. - http://redis.io/commands/pfcount - - - - Merge multiple HyperLogLog values into an unique value that will approximate the cardinality of the union of the observed Sets of the source HyperLogLog structures. - - http://redis.io/commands/pfmerge - - - - Merge multiple HyperLogLog values into an unique value that will approximate the cardinality of the union of the observed Sets of the source HyperLogLog structures. - - http://redis.io/commands/pfmerge - - - - Inidicate exactly which redis server we are talking to - - - - - Indicates whether the instance can communicate with the server (resolved - using the supplied key and optional flags) - - - - - Removes the specified key. A key is ignored if it does not exist. - - True if the key was removed. - http://redis.io/commands/del - - - - Removes the specified keys. A key is ignored if it does not exist. - - The number of keys that were removed. - http://redis.io/commands/del - - - - Serialize the value stored at key in a Redis-specific format and return it to the user. The returned value can be synthesized back into a Redis key using the RESTORE command. - - the serialized value. - http://redis.io/commands/dump - - - - Returns if key exists. - - 1 if the key exists. 0 if the key does not exist. - http://redis.io/commands/exists - - - - Set a timeout on key. After the timeout has expired, the key will automatically be deleted. A key with an associated timeout is said to be volatile in Redis terminology. - - If key is updated before the timeout has expired, then the timeout is removed as if the PERSIST command was invoked on key. - For Redis versions < 2.1.3, existing timeouts cannot be overwritten. So, if key already has an associated timeout, it will do nothing and return 0. Since Redis 2.1.3, you can update the timeout of a key. It is also possible to remove the timeout using the PERSIST command. See the page on key expiry for more information. - 1 if the timeout was set. 0 if key does not exist or the timeout could not be set. - http://redis.io/commands/expire - http://redis.io/commands/pexpire - http://redis.io/commands/persist - - - - Set a timeout on key. After the timeout has expired, the key will automatically be deleted. A key with an associated timeout is said to be volatile in Redis terminology. - - If key is updated before the timeout has expired, then the timeout is removed as if the PERSIST command was invoked on key. - For Redis versions < 2.1.3, existing timeouts cannot be overwritten. So, if key already has an associated timeout, it will do nothing and return 0. Since Redis 2.1.3, you can update the timeout of a key. It is also possible to remove the timeout using the PERSIST command. See the page on key expiry for more information. - 1 if the timeout was set. 0 if key does not exist or the timeout could not be set. - http://redis.io/commands/expireat - http://redis.io/commands/pexpireat - http://redis.io/commands/persist - - - - Atomically transfer a key from a source Redis instance to a destination Redis instance. On success the key is deleted from the original instance by default, and is guaranteed to exist in the target instance. - - http://redis.io/commands/MIGRATE - - - - Move key from the currently selected database (see SELECT) to the specified destination database. When key already exists in the destination database, or it does not exist in the source database, it does nothing. It is possible to use MOVE as a locking primitive because of this. - - 1 if key was moved; 0 if key was not moved. - http://redis.io/commands/move - - - Remove the existing timeout on key, turning the key from volatile (a key with an expire set) to persistent (a key that will never expire as no timeout is associated). - 1 if the timeout was removed. 0 if key does not exist or does not have an associated timeout. - http://redis.io/commands/persist - - - - Return a random key from the currently selected database. - - the random key, or nil when the database is empty. - http://redis.io/commands/randomkey - - - - Renames key to newkey. It returns an error when the source and destination names are the same, or when key does not exist. - - http://redis.io/commands/rename - http://redis.io/commands/renamenx - - - - Create a key associated with a value that is obtained by deserializing the provided serialized value (obtained via DUMP). - If ttl is 0 the key is created without any expire, otherwise the specified expire time(in milliseconds) is set. - - http://redis.io/commands/restore - - - - Returns the remaining time to live of a key that has a timeout. This introspection capability allows a Redis client to check how many seconds a given key will continue to be part of the dataset. - - TTL, or nil when key does not exist or does not have a timeout. - http://redis.io/commands/ttl - - - - Returns the string representation of the type of the value stored at key. The different types that can be returned are: string, list, set, zset and hash. - - type of key, or none when key does not exist. - http://redis.io/commands/type - - - - Returns the element at index index in the list stored at key. The index is zero-based, so 0 means the first element, 1 the second element and so on. Negative indices can be used to designate elements starting at the tail of the list. Here, -1 means the last element, -2 means the penultimate and so forth. - - the requested element, or nil when index is out of range. - http://redis.io/commands/lindex - - - - Inserts value in the list stored at key either before or after the reference value pivot. - When key does not exist, it is considered an empty list and no operation is performed. - - the length of the list after the insert operation, or -1 when the value pivot was not found. - http://redis.io/commands/linsert - - - - Inserts value in the list stored at key either before or after the reference value pivot. - When key does not exist, it is considered an empty list and no operation is performed. - - the length of the list after the insert operation, or -1 when the value pivot was not found. - http://redis.io/commands/linsert - - - - Removes and returns the first element of the list stored at key. - - the value of the first element, or nil when key does not exist. - http://redis.io/commands/lpop - - - - Insert the specified value at the head of the list stored at key. If key does not exist, it is created as empty list before performing the push operations. - - the length of the list after the push operations. - http://redis.io/commands/lpush - http://redis.io/commands/lpushx - - - - Insert all the specified values at the head of the list stored at key. If key does not exist, it is created as empty list before performing the push operations. - Elements are inserted one after the other to the head of the list, from the leftmost element to the rightmost element. So for instance the command LPUSH mylist a b c will result into a list containing c as first element, b as second element and a as third element. - - the length of the list after the push operations. - http://redis.io/commands/lpush - - - - Returns the length of the list stored at key. If key does not exist, it is interpreted as an empty list and 0 is returned. - - the length of the list at key. - http://redis.io/commands/llen - - - - Returns the specified elements of the list stored at key. The offsets start and stop are zero-based indexes, with 0 being the first element of the list (the head of the list), 1 being the next element and so on. - These offsets can also be negative numbers indicating offsets starting at the end of the list.For example, -1 is the last element of the list, -2 the penultimate, and so on. - Note that if you have a list of numbers from 0 to 100, LRANGE list 0 10 will return 11 elements, that is, the rightmost item is included. - - list of elements in the specified range. - http://redis.io/commands/lrange - - - - Removes the first count occurrences of elements equal to value from the list stored at key. The count argument influences the operation in the following ways: - count > 0: Remove elements equal to value moving from head to tail. - count < 0: Remove elements equal to value moving from tail to head. - count = 0: Remove all elements equal to value. - - the number of removed elements. - http://redis.io/commands/lrem - - - - Removes and returns the last element of the list stored at key. - - http://redis.io/commands/rpop - - - - Atomically returns and removes the last element (tail) of the list stored at source, and pushes the element at the first element (head) of the list stored at destination. - - the element being popped and pushed. - http://redis.io/commands/rpoplpush - - - - Insert the specified value at the tail of the list stored at key. If key does not exist, it is created as empty list before performing the push operation. - - the length of the list after the push operation. - http://redis.io/commands/rpush - http://redis.io/commands/rpushx - - - - Insert all the specified values at the tail of the list stored at key. If key does not exist, it is created as empty list before performing the push operation. - Elements are inserted one after the other to the tail of the list, from the leftmost element to the rightmost element. So for instance the command RPUSH mylist a b c will result into a list containing a as first element, b as second element and c as third element. - - the length of the list after the push operation. - http://redis.io/commands/rpush - - - - Sets the list element at index to value. For more information on the index argument, see ListGetByIndex. An error is returned for out of range indexes. - - http://redis.io/commands/lset - - - - Trim an existing list so that it will contain only the specified range of elements specified. Both start and stop are zero-based indexes, where 0 is the first element of the list (the head), 1 the next element and so on. - For example: LTRIM foobar 0 2 will modify the list stored at foobar so that only the first three elements of the list will remain. - start and end can also be negative numbers indicating offsets from the end of the list, where -1 is the last element of the list, -2 the penultimate element and so on. - - http://redis.io/commands/ltrim - - - - Extends a lock, if the token value is correct - - - - - Queries the token held against a lock - - - - - Releases a lock, if the token value is correct - - - - - Takes a lock (specifying a token value) if it is not already taken - - - - - Posts a message to the given channel. - - the number of clients that received the message. - http://redis.io/commands/publish - - - - Execute a Lua script against the server - - http://redis.io/commands/eval, http://redis.io/commands/evalsha - A dynamic representation of the script's result - - - - Execute an arbitrary command against the server; this is primarily intended for - executing modules, but may also be used to provide access to new features that lack - a direct API - - A dynamic representation of the command's result - - - - Execute an arbitrary command against the server; this is primarily intended for - executing modules, but may also be used to provide access to new features that lack - a direct API - - A dynamic representation of the command's result - - - - Execute a Lua script against the server using just the SHA1 hash - - http://redis.io/commands/evalsha - A dynamic representation of the script's result - - - - Execute a lua script against the server, using previously prepared script. - Named parameters, if any, are provided by the `parameters` object. - - - - - Execute a lua script against the server, using previously prepared and loaded script. - This method sends only the SHA1 hash of the lua script to Redis. - Named parameters, if any, are provided by the `parameters` object. - - - - - Add the specified member to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members. - - True if the specified member was not already present in the set, else False - http://redis.io/commands/sadd - - - - Add the specified members to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members. - - the number of elements that were added to the set, not including all the elements already present into the set. - http://redis.io/commands/sadd - - - - This command is equal to SetCombine, but instead of returning the resulting set, it is stored in destination. If destination already exists, it is overwritten. - - the number of elements in the resulting set. - http://redis.io/commands/sunionstore - http://redis.io/commands/sinterstore - http://redis.io/commands/sdiffstore - - - - This command is equal to SetCombine, but instead of returning the resulting set, it is stored in destination. If destination already exists, it is overwritten. - - the number of elements in the resulting set. - http://redis.io/commands/sunionstore - http://redis.io/commands/sinterstore - http://redis.io/commands/sdiffstore - - - - Returns the members of the set resulting from the specified operation against the given sets. - - list with members of the resulting set. - http://redis.io/commands/sunion - http://redis.io/commands/sinter - http://redis.io/commands/sdiff - - - - Returns the members of the set resulting from the specified operation against the given sets. - - list with members of the resulting set. - http://redis.io/commands/sunion - http://redis.io/commands/sinter - http://redis.io/commands/sdiff - - - - Returns if member is a member of the set stored at key. - - 1 if the element is a member of the set. 0 if the element is not a member of the set, or if key does not exist. - http://redis.io/commands/sismember - - - - Returns the set cardinality (number of elements) of the set stored at key. - - the cardinality (number of elements) of the set, or 0 if key does not exist. - http://redis.io/commands/scard - - - - Returns all the members of the set value stored at key. - - all elements of the set. - http://redis.io/commands/smembers - - - - Move member from the set at source to the set at destination. This operation is atomic. In every given moment the element will appear to be a member of source or destination for other clients. - When the specified element already exists in the destination set, it is only removed from the source set. - - 1 if the element is moved. 0 if the element is not a member of source and no operation was performed. - http://redis.io/commands/smove - - - - Removes and returns a random element from the set value stored at key. - - the removed element, or nil when key does not exist. - http://redis.io/commands/spop - - - - Return a random element from the set value stored at key. - - the randomly selected element, or nil when key does not exist - http://redis.io/commands/srandmember - - - - Return an array of count distinct elements if count is positive. If called with a negative count the behavior changes and the command is allowed to return the same element multiple times. - In this case the numer of returned elements is the absolute value of the specified count. - - an array of elements, or an empty array when key does not exist - http://redis.io/commands/srandmember - - - - Remove the specified member from the set stored at key. Specified members that are not a member of this set are ignored. - - True if the specified member was already present in the set, else False - http://redis.io/commands/srem - - - - Remove the specified members from the set stored at key. Specified members that are not a member of this set are ignored. - - the number of members that were removed from the set, not including non existing members. - http://redis.io/commands/srem - - - - Sorts a list, set or sorted set (numerically or alphabetically, ascending by default); By default, the elements themselves are compared, but the values can also be - used to perform external key-lookups using the by parameter. By default, the elements themselves are returned, but external key-lookups (one or many) can - be performed instead by specifying the get parameter (note that # specifies the element itself, when used in get). - Referring to the redis SORT documentation for examples is recommended. When used in hashes, by and get - can be used to specify fields using -> notation (again, refer to redis documentation). - - http://redis.io/commands/sort - Returns the number of elements stored in the new list - - - - Sorts a list, set or sorted set (numerically or alphabetically, ascending by default); By default, the elements themselves are compared, but the values can also be - used to perform external key-lookups using the by parameter. By default, the elements themselves are returned, but external key-lookups (one or many) can - be performed instead by specifying the get parameter (note that # specifies the element itself, when used in get). - Referring to the redis SORT documentation for examples is recommended. When used in hashes, by and get - can be used to specify fields using -> notation (again, refer to redis documentation). - - http://redis.io/commands/sort - Returns the sorted elements, or the external values if get is specified - - - - Adds the specified member with the specified score to the sorted set stored at key. If the specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering. - - True if the value was added, False if it already existed (the score is still updated) - http://redis.io/commands/zadd - - - - Adds the specified member with the specified score to the sorted set stored at key. If the specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering. - - True if the value was added, False if it already existed (the score is still updated) - http://redis.io/commands/zadd - - - - Adds all the specified members with the specified scores to the sorted set stored at key. If a specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering. - - The number of elements added to the sorted sets, not including elements already existing for which the score was updated. - http://redis.io/commands/zadd - - - - Adds all the specified members with the specified scores to the sorted set stored at key. If a specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering. - - The number of elements added to the sorted sets, not including elements already existing for which the score was updated. - http://redis.io/commands/zadd - - - - Computes a set operation over two sorted sets, and stores the result in destination, optionally performing - a specific aggregation (defaults to sum) - - http://redis.io/commands/zunionstore - http://redis.io/commands/zinterstore - the number of elements in the resulting sorted set at destination - - - - Computes a set operation over multiple sorted sets (optionally using per-set weights), and stores the result in destination, optionally performing - a specific aggregation (defaults to sum) - - http://redis.io/commands/zunionstore - http://redis.io/commands/zinterstore - the number of elements in the resulting sorted set at destination - - - - Decrements the score of member in the sorted set stored at key by decrement. If member does not exist in the sorted set, it is added with -decrement as its score (as if its previous score was 0.0). - - the new score of member - http://redis.io/commands/zincrby - - - - Increments the score of member in the sorted set stored at key by increment. If member does not exist in the sorted set, it is added with increment as its score (as if its previous score was 0.0). - - the new score of member - http://redis.io/commands/zincrby - - - - Returns the sorted set cardinality (number of elements) of the sorted set stored at key. - - the cardinality (number of elements) of the sorted set, or 0 if key does not exist. - http://redis.io/commands/zcard - - - - When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command returns the number of elements in the sorted set at key with a value between min and max. - - the number of elements in the specified score range. - When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command returns all the elements in the sorted set at key with a value between min and max. - - - - Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score. - Both start and stop are zero-based indexes, where 0 is the first element, 1 is the next element and so on. They can also be negative numbers indicating offsets from the end of the sorted set, with -1 being the last element of the sorted set, -2 the penultimate element and so on. - - list of elements in the specified range - http://redis.io/commands/zrange - http://redis.io/commands/zrevrange - - - - Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score. - Both start and stop are zero-based indexes, where 0 is the first element, 1 is the next element and so on. They can also be negative numbers indicating offsets from the end of the sorted set, with -1 being the last element of the sorted set, -2 the penultimate element and so on. - - list of elements in the specified range - http://redis.io/commands/zrange - http://redis.io/commands/zrevrange - - - - Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score. - Start and stop are used to specify the min and max range for score values. Similar to other range methods the values are inclusive. - - list of elements in the specified score range - http://redis.io/commands/zrangebyscore - http://redis.io/commands/zrevrangebyscore - - - - Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score. - Start and stop are used to specify the min and max range for score values. Similar to other range methods the values are inclusive. - - list of elements in the specified score range - http://redis.io/commands/zrangebyscore - http://redis.io/commands/zrevrangebyscore - - - - When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command returns all the elements in the sorted set at key with a value between min and max. - - http://redis.io/commands/zrangebylex - list of elements in the specified score range. - - - - Returns the rank of member in the sorted set stored at key, by default with the scores ordered from low to high. The rank (or index) is 0-based, which means that the member with the lowest score has rank 0. - - If member exists in the sorted set, the rank of member; If member does not exist in the sorted set or key does not exist, null - http://redis.io/commands/zrank - http://redis.io/commands/zrevrank - - - - Removes the specified member from the sorted set stored at key. Non existing members are ignored. - - True if the member existed in the sorted set and was removed; False otherwise. - http://redis.io/commands/zrem - - - - Removes the specified members from the sorted set stored at key. Non existing members are ignored. - - The number of members removed from the sorted set, not including non existing members. - http://redis.io/commands/zrem - - - - Removes all elements in the sorted set stored at key with rank between start and stop. Both start and stop are 0 -based indexes with 0 being the element with the lowest score. These indexes can be negative numbers, where they indicate offsets starting at the element with the highest score. For example: -1 is the element with the highest score, -2 the element with the second highest score and so forth. - - the number of elements removed. - http://redis.io/commands/zremrangebyrank - - - - Removes all elements in the sorted set stored at key with a score between min and max (inclusive by default). - - the number of elements removed. - http://redis.io/commands/zremrangebyscore - - - - When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command removes all elements in the sorted set stored at key between the lexicographical range specified by min and max. - - http://redis.io/commands/zremrangebylex - the number of elements removed. - - - - Returns the score of member in the sorted set at key; If member does not exist in the sorted set, or key does not exist, nil is returned. - - the score of member - http://redis.io/commands/zscore - - - - If key already exists and is a string, this command appends the value at the end of the string. If key does not exist it is created and set as an empty string, - so APPEND will be similar to SET in this special case. - - the length of the string after the append operation. - http://redis.io/commands/append - - - - Count the number of set bits (population counting) in a string. - By default all the bytes contained in the string are examined.It is possible to specify the counting operation only in an interval passing the additional arguments start and end. - Like for the GETRANGE command start and end can contain negative values in order to index bytes starting from the end of the string, where -1 is the last byte, -2 is the penultimate, and so forth. - - The number of bits set to 1 - http://redis.io/commands/bitcount - - - - Perform a bitwise operation between multiple keys (containing string values) and store the result in the destination key. - The BITOP command supports four bitwise operations; note that NOT is a unary operator: the second key should be omitted in this case - and only the first key will be considered. - The result of the operation is always stored at destkey. - - The size of the string stored in the destination key, that is equal to the size of the longest input string. - http://redis.io/commands/bitop - - - - Perform a bitwise operation between multiple keys (containing string values) and store the result in the destination key. - The BITOP command supports four bitwise operations; note that NOT is a unary operator. - The result of the operation is always stored at destkey. - - The size of the string stored in the destination key, that is equal to the size of the longest input string. - http://redis.io/commands/bitop - - - - Return the position of the first bit set to 1 or 0 in a string. - The position is returned thinking at the string as an array of bits from left to right where the first byte most significant bit is at position 0, the second byte most significant big is at position 8 and so forth. - An start and end may be specified; these are in bytes, not bits; start and end can contain negative values in order to index bytes starting from the end of the string, where -1 is the last byte, -2 is the penultimate, and so forth. - - The command returns the position of the first bit set to 1 or 0 according to the request. - If we look for set bits(the bit argument is 1) and the string is empty or composed of just zero bytes, -1 is returned. - http://redis.io/commands/bitpos - - - - Decrements the number stored at key by decrement. If the key does not exist, it is set to 0 before performing the operation. An error is returned if the key contains a value of the wrong type or contains a string that is not representable as integer. This operation is limited to 64 bit signed integers. - - the value of key after the increment - http://redis.io/commands/decrby - http://redis.io/commands/decr - - - - Decrements the string representing a floating point number stored at key by the specified increment. If the key does not exist, it is set to 0 before performing the operation. The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation. - - the value of key after the increment - http://redis.io/commands/incrbyfloat - - - - Get the value of key. If the key does not exist the special value nil is returned. An error is returned if the value stored at key is not a string, because GET only handles string values. - - the value of key, or nil when key does not exist. - http://redis.io/commands/get - - - - Returns the values of all specified keys. For every key that does not hold a string value or does not exist, the special value nil is returned. - - http://redis.io/commands/mget - - - - Returns the bit value at offset in the string value stored at key. - When offset is beyond the string length, the string is assumed to be a contiguous space with 0 bits. - - the bit value stored at offset. - http://redis.io/commands/getbit - - - - Returns the substring of the string value stored at key, determined by the offsets start and end (both are inclusive). Negative offsets can be used in order to provide an offset starting from the end of the string. So -1 means the last character, -2 the penultimate and so forth. - - the substring of the string value stored at key - http://redis.io/commands/getrange - - - - Atomically sets key to value and returns the old value stored at key. - - http://redis.io/commands/getset - the old value stored at key, or nil when key did not exist. - - - - Get the value of key. If the key does not exist the special value nil is returned. An error is returned if the value stored at key is not a string, because GET only handles string values. - - the value of key, or nil when key does not exist. - http://redis.io/commands/get - - - - Increments the number stored at key by increment. If the key does not exist, it is set to 0 before performing the operation. An error is returned if the key contains a value of the wrong type or contains a string that is not representable as integer. This operation is limited to 64 bit signed integers. - - the value of key after the increment - http://redis.io/commands/incrby - http://redis.io/commands/incr - - - - Increment the string representing a floating point number stored at key by the specified increment. If the key does not exist, it is set to 0 before performing the operation. The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation. - - the value of key after the increment - http://redis.io/commands/incrbyfloat - - - - Returns the length of the string value stored at key. - - the length of the string at key, or 0 when key does not exist. - http://redis.io/commands/strlen - - - - Set key to hold the string value. If key already holds a value, it is overwritten, regardless of its type. - - http://redis.io/commands/set - - - - Sets the given keys to their respective values. If "not exists" is specified, this will not perform any operation at all even if just a single key already exists. - - True if the keys were set, else False - http://redis.io/commands/mset - http://redis.io/commands/msetnx - - - - Sets or clears the bit at offset in the string value stored at key. - The bit is either set or cleared depending on value, which can be either 0 or 1. When key does not exist, a new string value is created.The string is grown to make sure it can hold a bit at offset. - - the original bit value stored at offset. - http://redis.io/commands/setbit - - - - Overwrites part of the string stored at key, starting at the specified offset, for the entire length of value. If the offset is larger than the current length of the string at key, the string is padded with zero-bytes to make offset fit. Non-existing keys are considered as empty strings, so this command will make sure it holds a string large enough to be able to set value at offset. - - the length of the string after it was modified by the command. - http://redis.io/commands/setrange - - - - Describes a value/expiry pair - - - - - The expiry of this record - - - - - The value of this record - - - - - Describes internal errors (mainly intended for debugging) - - - - - Gets the connection-type of the failing connection - - - - - Gets the failing server-endpoint (this can be null) - - - - - Gets the exception if available (this can be null) - - - - - The underlying origin of the error - - - - - If an IProfiledCommand is a retransmission of a previous command, this enum - is used to indicate what prompted the retransmission. - - This can be used to distinguish between transient causes (moving hashslots, joining nodes, etc.) - and incorrect routing. - - - - - No stated reason - - - - - Issued to investigate which node owns a key - - - - - A node has indicated that it does *not* own the given key - - - - - A profiled command against a redis instance. - - TimeSpans returned by this interface use a high precision timer if possible. - DateTimes returned by this interface are no more precise than DateTime.UtcNow. - - - - - The endpoint this command was sent to. - - - - - The Db this command was sent to. - - - - - The name of this command. - - - - - The CommandFlags the command was submitted with. - - - - - When this command was *created*, will be approximately - when the paired method of StackExchange.Redis was called but - before that method returned. - - Note that the resolution of the returned DateTime is limited by DateTime.UtcNow. - - - - - How long this command waited to be added to the queue of pending - redis commands. A large TimeSpan indicates serious contention for - the pending queue. - - - - - How long this command spent in the pending queue before being sent to redis. - A large TimeSpan can indicate a large number of pending events, large pending events, - or network issues. - - - - - How long before Redis responded to this command and it's response could be handled after it was sent. - A large TimeSpan can indicate a large response body, an overtaxed redis instance, or network issues. - - - - - How long between Redis responding to this command and awaiting consumers being notified. - - - - - How long it took this redis command to be processed, from creation to deserializing the final response. - - Note that this TimeSpan *does not* include time spent awaiting a Task in consumer code. - - - - - If a command has to be resent due to an ASK or MOVED response from redis (in a cluster configuration), - the second sending of the command will have this property set to the original IProfiledCommand. - - This can only be set if redis is configured as a cluster. - - - - - If RetransmissionOf is not null, this property will be set to either Ask or Moved to indicate - what sort of response triggered the retransmission. - - This can be useful for determining the root cause of extra commands. - - - - - Interface for profiling individual commands against an Redis ConnectionMulitplexer. - - - - - Called to provide a context object. - - This method is called before the method which triggers work against redis (such as StringSet(Async)) returns, - and will always be called on the same thread as that method. - - Note that GetContext() may be called even if ConnectionMultiplexer.BeginProfiling() has not been called. - You may return `null` to prevent any tracking of commands. - - - - - Describes retry policy functionality that can be provided to the multiplexer to be used for connection reconnects - - - - - This method is called by the multiplexer to determine if a reconnect operation can be retried now. - - The number of times reconnect retries have already been made by the multiplexer while it was in connecting state - Total time elapsed in milliseconds since the last reconnect retry was made - - - - Common operations available to all redis connections - - - - - This command is often used to test if a connection is still alive, or to measure latency. - - The observed latency. - http://redis.io/commands/ping - - - - Represents a resumable, cursor-based scanning operation - - - - - Returns the cursor that represents the *active* page of results (not the pending/next page of results as returned by SCAN/HSCAN/ZSCAN/SSCAN) - - - - - The page size of the current operation - - - - - The offset into the current page - - - - - Common operations available to all redis connections - - - - - Gets the multiplexer that created this instance - - - - - This command is often used to test if a connection is still alive, or to measure latency. - - The observed latency. - http://redis.io/commands/ping - - - - Wait for a given asynchronous operation to complete (or timeout), reporting which - - - - - Wait for a given asynchronous operation to complete (or timeout) - - - - - Wait for a given asynchronous operation to complete (or timeout) - - - - - Wait for the given asynchronous operations to complete (or timeout) - - - - - Provides configuration controls of a redis server - - - - - Gets the cluster configuration associated with this server, if known - - - - - Gets the address of the connected server - - - - - Gets the features available to the connected server - - - - - Gets whether the connection to the server is active and usable - - - - - Gets whether the connected server is a replica / slave - - - - - Explicitly opt in for slave writes on writable slaves - - - - - Gets the operating mode of the connected server - - - - - Gets the version of the connected server - - - - - The CLIENT KILL command closes a given client connection identified by ip:port. - The ip:port should match a line returned by the CLIENT LIST command. - Due to the single-treaded nature of Redis, it is not possible to kill a client connection while it is executing a command.From the client point of view, the connection can never be closed in the middle of the execution of a command.However, the client will notice the connection has been closed only when the next command is sent (and results in network error). - - http://redis.io/commands/client-kill - - - - The CLIENT KILL command closes a given client connection identified by ip:port. - The ip:port should match a line returned by the CLIENT LIST command. - Due to the single-treaded nature of Redis, it is not possible to kill a client connection while it is executing a command.From the client point of view, the connection can never be closed in the middle of the execution of a command.However, the client will notice the connection has been closed only when the next command is sent (and results in network error). - - http://redis.io/commands/client-kill - - - - The CLIENT KILL command closes multiple connections that match the specified filters - - the number of clients killed. - http://redis.io/commands/client-kill - - - - The CLIENT KILL command closes multiple connections that match the specified filters - - the number of clients killed. - http://redis.io/commands/client-kill - - - - The CLIENT LIST command returns information and statistics about the client connections server in a mostly human readable format. - - http://redis.io/commands/client-list - - - - The CLIENT LIST command returns information and statistics about the client connections server in a mostly human readable format. - - http://redis.io/commands/client-list - - - - Obtains the current CLUSTER NODES output from a cluster server - - - - - Obtains the current CLUSTER NODES output from a cluster server - - - - - Obtains the current raw CLUSTER NODES output from a cluster server - - - - - Obtains the current raw CLUSTER NODES output from a cluster server - - - - - Get all configuration parameters matching the specified pattern. - - All matching configuration parameters. - http://redis.io/commands/config-get - - - - Get all configuration parameters matching the specified pattern. - - All matching configuration parameters. - http://redis.io/commands/config-get - - - - Resets the statistics reported by Redis using the INFO command. - - http://redis.io/commands/config-resetstat - - - - Resets the statistics reported by Redis using the INFO command. - - http://redis.io/commands/config-resetstat - - - - The CONFIG REWRITE command rewrites the redis.conf file the server was started with, applying the minimal changes needed to make it reflecting the configuration currently used by the server, that may be different compared to the original one because of the use of the CONFIG SET command. - - http://redis.io/commands/config-rewrite - - - - The CONFIG REWRITE command rewrites the redis.conf file the server was started with, applying the minimal changes needed to make it reflecting the configuration currently used by the server, that may be different compared to the original one because of the use of the CONFIG SET command. - - http://redis.io/commands/config-rewrite - - - - The CONFIG SET command is used in order to reconfigure the server at runtime without the need to restart Redis. You can change both trivial parameters or switch from one to another persistence option using this command. - - http://redis.io/commands/config-set - - - - The CONFIG SET command is used in order to reconfigure the server at runtime without the need to restart Redis. You can change both trivial parameters or switch from one to another persistence option using this command. - - http://redis.io/commands/config-set - - - - Return the number of keys in the database. - - http://redis.io/commands/dbsize - - - - Return the number of keys in the database. - - http://redis.io/commands/dbsize - - - - Return the same message passed in - - http://redis.io/commands/echo - - - - Return the same message passed in - - http://redis.io/commands/echo - - - - Delete all the keys of all databases on the server. - - http://redis.io/commands/flushall - - - - Delete all the keys of all databases on the server. - - http://redis.io/commands/flushall - - - - Delete all the keys of the database. - - http://redis.io/commands/flushdb - - - - Delete all the keys of the database. - - http://redis.io/commands/flushdb - - - - Get summary statistics associates with this server - - - - - The INFO command returns information and statistics about the server in a format that is simple to parse by computers and easy to read by humans. - - http://redis.io/commands/info - - - - The INFO command returns information and statistics about the server in a format that is simple to parse by computers and easy to read by humans. - - http://redis.io/commands/info - - - - The INFO command returns information and statistics about the server in a format that is simple to parse by computers and easy to read by humans. - - http://redis.io/commands/info - - - - The INFO command returns information and statistics about the server in a format that is simple to parse by computers and easy to read by humans. - - http://redis.io/commands/info - - - - Returns all keys matching pattern; the KEYS or SCAN commands will be used based on the server capabilities. - - Warning: consider KEYS as a command that should only be used in production environments with extreme care. - http://redis.io/commands/keys - http://redis.io/commands/scan - - - - Returns all keys matching pattern; the KEYS or SCAN commands will be used based on the server capabilities; note: to resume an iteration via cursor, cast the original enumerable or enumerator to IScanningCursor. - - Warning: consider KEYS as a command that should only be used in production environments with extreme care. - http://redis.io/commands/keys - http://redis.io/commands/scan - - - - Return the time of the last DB save executed with success. A client may check if a BGSAVE command succeeded reading the LASTSAVE value, then issuing a BGSAVE command and checking at regular intervals every N seconds if LASTSAVE changed. - - http://redis.io/commands/lastsave - - - - Return the time of the last DB save executed with success. A client may check if a BGSAVE command succeeded reading the LASTSAVE value, then issuing a BGSAVE command and checking at regular intervals every N seconds if LASTSAVE changed. - - http://redis.io/commands/lastsave - - - - Promote the selected node to be master - - - - - Explicitly request the database to persist the current state to disk - - http://redis.io/commands/bgrewriteaof - http://redis.io/commands/bgsave - http://redis.io/commands/save - http://redis.io/topics/persistence - - - - Explicitly request the database to persist the current state to disk - - http://redis.io/commands/bgrewriteaof - http://redis.io/commands/bgsave - http://redis.io/commands/save - http://redis.io/topics/persistence - - - - Inidicates whether the specified script is defined on the server - - - - - Inidicates whether the specified script hash is defined on the server - - - - - Inidicates whether the specified script is defined on the server - - - - - Inidicates whether the specified script hash is defined on the server - - - - - Removes all cached scripts on this server - - - - - Removes all cached scripts on this server - - - - - Explicitly defines a script on the server - - - - - Explicitly defines a script on the server - - - - - Explicitly defines a script on the server - - - - - Explicitly defines a script on the server - - - - Asks the redis server to shutdown, killing all connections. Please FULLY read the notes on the SHUTDOWN command. - http://redis.io/commands/shutdown - - - - The SLAVEOF command can change the replication settings of a slave on the fly. If a Redis server is already acting as slave, specifying a null master will turn off the replication, turning the Redis server into a MASTER. Specifying a non-null master will make the server a slave of another server listening at the specified hostname and port. - - http://redis.io/commands/slaveof - - - - The SLAVEOF command can change the replication settings of a slave on the fly. If a Redis server is already acting as slave, specifying a null master will turn off the replication, turning the Redis server into a MASTER. Specifying a non-null master will make the server a slave of another server listening at the specified hostname and port. - - http://redis.io/commands/slaveof - - - - To read the slow log the SLOWLOG GET command is used, that returns every entry in the slow log. It is possible to return only the N most recent entries passing an additional argument to the command (for instance SLOWLOG GET 10). - - http://redis.io/commands/slowlog - - - - To read the slow log the SLOWLOG GET command is used, that returns every entry in the slow log. It is possible to return only the N most recent entries passing an additional argument to the command (for instance SLOWLOG GET 10). - - http://redis.io/commands/slowlog - - - - You can reset the slow log using the SLOWLOG RESET command. Once deleted the information is lost forever. - - http://redis.io/commands/slowlog - - - - You can reset the slow log using the SLOWLOG RESET command. Once deleted the information is lost forever. - - http://redis.io/commands/slowlog - - - - Lists the currently active channels. An active channel is a Pub/Sub channel with one ore more subscribers (not including clients subscribed to patterns). - - a list of active channels, optionally matching the specified pattern. - http://redis.io/commands/pubsub - - - - Lists the currently active channels. An active channel is a Pub/Sub channel with one ore more subscribers (not including clients subscribed to patterns). - - a list of active channels, optionally matching the specified pattern. - http://redis.io/commands/pubsub - - - - Returns the number of subscriptions to patterns (that are performed using the PSUBSCRIBE command). Note that this is not just the count of clients subscribed to patterns but the total number of patterns all the clients are subscribed to. - - the number of patterns all the clients are subscribed to. - http://redis.io/commands/pubsub - - - - Returns the number of subscriptions to patterns (that are performed using the PSUBSCRIBE command). Note that this is not just the count of clients subscribed to patterns but the total number of patterns all the clients are subscribed to. - - the number of patterns all the clients are subscribed to. - http://redis.io/commands/pubsub - - - - Returns the number of subscribers (not counting clients subscribed to patterns) for the specified channel. - - http://redis.io/commands/pubsub - - - - Returns the number of subscribers (not counting clients subscribed to patterns) for the specified channel. - - http://redis.io/commands/pubsub - - - - The TIME command returns the current server time. - - The server's current time. - http://redis.io/commands/time - - - - The TIME command returns the current server time. - - The server's current time. - http://redis.io/commands/time - - - - Returns the ip and port number of the master with that name. - If a failover is in progress or terminated successfully for this master it returns the address and port of the promoted slave. - - the sentinel service name - - the master ip and port - http://redis.io/topics/sentinel - - - - Returns the ip and port number of the master with that name. - If a failover is in progress or terminated successfully for this master it returns the address and port of the promoted slave. - - the sentinel service name - - the master ip and port - http://redis.io/topics/sentinel - - - - Show the state and info of the specified master. - - the sentinel service name - - the master state as KeyValuePairs - http://redis.io/topics/sentinel - - - - Force a failover as if the master was not reachable, and without asking for agreement to other Sentinels - (however a new version of the configuration will be published so that the other Sentinels will update their configurations). - - the sentinel service name - - the master state as KeyValuePairs - http://redis.io/topics/sentinel - - - - Show a list of monitored masters and their state. - - - an array of master state KeyValuePair arrays - http://redis.io/topics/sentinel - - - - Show a list of monitored masters and their state. - - - an array of master state KeyValuePair arrays - http://redis.io/topics/sentinel - - - - Show a list of slaves for this master, and their state. - - the sentinel service name - - an array of slave state KeyValuePair arrays - http://redis.io/topics/sentinel - - - - Show a list of slaves for this master, and their state. - - the sentinel service name - - an array of slave state KeyValuePair arrays - http://redis.io/topics/sentinel - - - - Force a failover as if the master was not reachable, and without asking for agreement to other Sentinels - (however a new version of the configuration will be published so that the other Sentinels will update their configurations). - - the sentinel service name - - http://redis.io/topics/sentinel - - - - Force a failover as if the master was not reachable, and without asking for agreement to other Sentinels - (however a new version of the configuration will be published so that the other Sentinels will update their configurations). - - the sentinel service name - - http://redis.io/topics/sentinel - - - - A redis connection used as the subscriber in a pub/sub scenario - - - - - Inidicate exactly which redis server we are talking to - - - - - Inidicate exactly which redis server we are talking to - - - - - Indicates whether the instance can communicate with the server; - if a channel is specified, the existing subscription map is queried to - resolve the server responsible for that subscription - otherwise the - server is chosen aribtraily from the masters. - - - - - Posts a message to the given channel. - - the number of clients that received the message. - http://redis.io/commands/publish - - - - Posts a message to the given channel. - - the number of clients that received the message. - http://redis.io/commands/publish - - - - Subscribe to perform some operation when a change to the preferred/active node is broadcast. - - http://redis.io/commands/subscribe - http://redis.io/commands/psubscribe - - - - Subscribe to perform some operation when a change to the preferred/active node is broadcast. - - http://redis.io/commands/subscribe - http://redis.io/commands/psubscribe - - - - Inidicate to which redis server we are actively subscribed for a given channel; returns null if - the channel is not actively subscribed - - - - - Unsubscribe from a specified message channel; note; if no handler is specified, the subscription is cancelled regardless - of the subscribers; if a handler is specified, the subscription is only cancelled if this handler is the - last handler remaining against the channel - - http://redis.io/commands/unsubscribe - http://redis.io/commands/punsubscribe - - - - Unsubscribe all subscriptions on this instance - - http://redis.io/commands/unsubscribe - http://redis.io/commands/punsubscribe - - - - Unsubscribe all subscriptions on this instance - - http://redis.io/commands/unsubscribe - http://redis.io/commands/punsubscribe - - - - Unsubscribe from a specified message channel; note; if no handler is specified, the subscription is cancelled regardless - of the subscribers; if a handler is specified, the subscription is only cancelled if this handler is the - last handler remaining against the channel - - http://redis.io/commands/unsubscribe - http://redis.io/commands/punsubscribe - - - - Represents a group of operations that will be sent to the server as a single unit, - and processed on the server as a single unit. Transactions can also include constraints - (implemented via WATCH), but note that constraint checking involves will (very briefly) - block the connection, since the transaction cannot be correctly committed (EXEC), - aborted (DISCARD) or not applied in the first place (UNWATCH) until the responses from - the constraint checks have arrived. - - http://redis.io/topics/transactions - Note that on a cluster, it may be required that all keys involved in the transaction - (including constraints) are in the same hash-slot - - - - Adds a precondition for this transaction - - - - - Execute the batch operation, sending all queued commands to the server. - - - - - Execute the batch operation, sending all queued commands to the server. - - - - - Provides the extension method to . - - - - - Creates a new instance that provides an isolated key space - of the specified underyling database instance. - - - The underlying database instance that the returned instance shall use. - - - The prefix that defines a key space isolation for the returned database instance. - - - A new instance that invokes the specified underlying - but prepends the specified - to all key paramters and thus forms a logical key space isolation. - - - - The following methods are not supported in a key space isolated database and - will throw an when invoked: - - - - - - - Please notice that keys passed to a script are prefixed (as normal) but care must - be taken when a script returns the name of a key as that will (currently) not be - "unprefixed". - - - - - - Represents a retry policy that performs retries at a fixed interval. The retries are performed upto a maximum allowed time. - - - - - Initializes a new instance using the specified maximum retry elapsed time allowed. - - maximum elapsed time in milliseconds to be allowed for it to perform retries - - - - This method is called by the ConnectionMultiplexer to determine if a reconnect operation can be retried now. - - The number of times reconnect retries have already been made by the ConnectionMultiplexer while it was in the connecting state - Total elapsed time in milliseconds since the last reconnect retry was made - - - - Represents a Lua script that can be executed on Redis. - - Unlike normal Redis Lua scripts, LuaScript can have named parameters (prefixed by a @). - Public fields and properties of the passed in object are treated as parameters. - - Parameters of type RedisKey are sent to Redis as KEY (http://redis.io/commands/eval) in addition to arguments, - so as to play nicely with Redis Cluster. - - All members of this class are thread safe. - - - - - The original Lua script that was used to create this. - - - - - The Lua script that will actually be sent to Redis for execution. - - All @-prefixed parameter names have been replaced at this point. - - - - - Finalizer, used to prompt cleanups of the script cache when - a LuaScript reference goes out of scope. - - - - - Invalidates the internal cache of LuaScript objects. - Existing LuaScripts will continue to work, but future calls to LuaScript.Prepare - return a new LuaScript instance. - - - - - Returns the number of cached LuaScripts. - - - - - Prepares a Lua script with named parameters to be run against any Redis instance. - - - - - Evaluates this LuaScript against the given database, extracting parameters from the passed in object if any. - - - - - Evaluates this LuaScript against the given database, extracting parameters from the passed in object if any. - - - - - Loads this LuaScript into the given IServer so it can be run with it's SHA1 hash, instead of - passing the full script on each Evaluate or EvaluateAsync call. - - Note: the FireAndForget command flag cannot be set - - - - - Loads this LuaScript into the given IServer so it can be run with it's SHA1 hash, instead of - passing the full script on each Evaluate or EvaluateAsync call. - - Note: the FireAndForget command flag cannot be set - - - - - Represents a Lua script that can be executed on Redis. - - Unlike LuaScript, LoadedLuaScript sends the hash of it's ExecutableScript to Redis rather than pass - the whole script on each call. This requires that the script be loaded into Redis before it is used. - - To create a LoadedLuaScript first create a LuaScript via LuaScript.Prepare(string), then - call Load(IServer, CommandFlags) on the returned LuaScript. - - Unlike normal Redis Lua scripts, LoadedLuaScript can have named parameters (prefixed by a @). - Public fields and properties of the passed in object are treated as parameters. - - Parameters of type RedisKey are sent to Redis as KEY (http://redis.io/commands/eval) in addition to arguments, - so as to play nicely with Redis Cluster. - - All members of this class are thread safe. - - - - - The original script that was used to create this LoadedLuaScript. - - - - - The script that will actually be sent to Redis for execution. - - - - - The SHA1 hash of ExecutableScript. - - This is sent to Redis instead of ExecutableScript during Evaluate and EvaluateAsync calls. - - - - - Evaluates this LoadedLuaScript against the given database, extracting parameters for the passed in object if any. - - This method sends the SHA1 hash of the ExecutableScript instead of the script itself. If the script has not - been loaded into the passed Redis instance it will fail. - - - - - Evaluates this LoadedLuaScript against the given database, extracting parameters for the passed in object if any. - - This method sends the SHA1 hash of the ExecutableScript instead of the script itself. If the script has not - been loaded into the passed Redis instance it will fail. - - - - - Indicates that a command was illegal and was not sent to the server - - - - - Indicates the time allotted for a command or operation has expired. - - - - - Serialization implementation; not intended for general usage - - - - - status of the command while communicating with Redis - - - - - Indicates a connection fault when communicating with redis - - - - - Serialization implementation; not intended for general usage - - - - - The type of connection failure - - - - - status of the command while communicating with Redis - - - - - Indicates an issue communicating with redis - - - - - Deserialization constructor; not intended for general usage - - - - - Indicates an exception raised by a redis server - - - - - Things with the potential to cause harm, or to reveal configuration information - - - - - This does a few important things: - 1: it suppresses error events for commands that the user isn't interested in - (i.e. "why does my standalone server keep saying ERR unknown command 'cluster' ?") - 2: it allows the initial PING and GET (during connect) to get queued rather - than be rejected as no-server-available (note that this doesn't apply to - handshake messages, as they bypass the queue completely) - 3: it disables non-pref logging, as it is usually server-targeted - - - - - Checks both high-pri and regular queues to see if the next item is a PING, and if so: dequeues it and returns it - - Additional options for the MIGRATE command @@ -5458,598 +2225,26 @@ Ordered from high values to low values - + - This writes a message **directly** to the output stream; note - that this ignores the queue, so should only be used *either* - from the regular dequeue loop, *or* from the "I've just - connected" handshake (when there is no dequeue loop) - otherwise, - you can pretty much assume you're going to destroy the stream + Specifies the proxy that is being used to communicate to redis - + - Big ol' wrapper around most of the profiling storage logic, 'cause it got too big to just live in ConnectionMultiplexer. + Direct communication to the redis server(s) - + - Necessary, because WeakReference can't be readily comparable (since the reference is... weak). - - This lets us detect leaks* with some reasonable confidence, and cleanup periodically. - - Some calisthenics are done to avoid allocating WeakReferences for no reason, as often - we're just looking up ProfileStorage. - - * Somebody starts profiling, but for whatever reason never *stops* with a context object - - - - - Suitable for use as a key into something. - - This instance **WILL NOT** keep forObj alive, so it can - be copied out of the calling method's scope. - - - - - Only suitable for looking up. - - This instance **ABSOLUTELY WILL** keep forObj alive, so this - had better not be copied into anything outside the scope of the - calling method. - - - - - Registers the passed context with a collection that can be retried with subsequent calls to TryGetValue. - - Returns false if the passed context object is already registered. - - - - - Returns true and sets val to the tracking collection associated with the given context if the context - was registered with TryCreate. - - Otherwise returns false and sets val to null. - - - - - Removes a context, setting all commands to a (non-thread safe) enumerable of - all the commands attached to that context. - - If the context was never registered, will return false and set commands to null. - - Subsequent calls to TryRemove with the same context will return false unless it is - re-registered with TryCreate. - - - - - If enough time has passed (1 minute) since the last call, this does walk of all contexts - and removes those that the GC has collected. - - - - - Represents a pub/sub channel name - - - - - Create a new redis channel from a buffer, explicitly controlling the pattern mode - - - - - Create a new redis channel from a string, explicitly controlling the pattern mode - - - - - Indicates whether the channel-name is either null or a zero-length value - - - - - Indicate whether two channel names are not equal - - - - - Indicate whether two channel names are not equal - - - - - Indicate whether two channel names are not equal - - - - - Indicate whether two channel names are not equal - - - - - Indicate whether two channel names are not equal - - - - - Indicate whether two channel names are equal - - - - - Indicate whether two channel names are equal - - - - - Indicate whether two channel names are equal - - - - - Indicate whether two channel names are equal - - - - - Indicate whether two channel names are equal - - - - - See Object.Equals - - - - - Indicate whether two channel names are equal - - - - - See Object.GetHashCode - - - - - Obtains a string representation of the channel name - - - - - The matching pattern for this channel - - - - - Will be treated as a pattern if it includes * - - - - - Never a pattern - - - - - Always a pattern - - - - - Create a channel name from a String - - - - - Create a channel name from a Byte[] - - - - - Obtain the channel name as a Byte[] - - - - - Obtain the channel name as a String - - - - - Notification of errors from the redis server - - - - - The origin of the message - - - - - The message from the server - - - - - Provides basic information about the features available on a particular version of Redis - - - - - Create a new RedisFeatures instance for the given version - - - - - Does BITOP / BITCOUNT exist? - - - - - Is CLIENT SETNAME available? - - - - - Does EXEC support EXECABORT if there are errors? - - - - - Can EXPIRE be used to set expiration on a key that is already volatile (i.e. has an expiration)? - - - - - Does HDEL support varadic usage? - - - - - Does INCRBYFLOAT / HINCRBYFLOAT exist? - - - - - Does INFO support sections? - - - - - Is LINSERT available? - - - - - Indicates whether PEXPIRE and PTTL are supported - - - - - Does SRANDMEMBER support "count"? - - - - - Is the PERSIST operation supported? - - - - - Is RPUSHX and LPUSHX available? - - - - - Are cursor-based scans available? - - - - - Does EVAL / EVALSHA / etc exist? - - - - - Does SET have the EX|PX|NX|XX extensions? - - - - - Does SADD support varadic usage? - - - - - Is STRLEN available? - - - - - Is SETRANGE available? - - - - - Does TIME exist? - - - - - Are Lua changes to the calling database transparent to the calling client? - - - - - Is PFCOUNT supported on slaves? - - - - - Are the GEO commands available? - - - - - The Redis version of the server - - - - - Create a string representation of the available features - - - - - Represents a key that can be stored in redis - - - - - Indicate whether two keys are not equal - - - - - Indicate whether two keys are not equal - - - - - Indicate whether two keys are not equal - - - - - Indicate whether two keys are not equal - - - - - Indicate whether two keys are not equal - - - - - Indicate whether two keys are equal - - - - - Indicate whether two keys are equal - - - - - Indicate whether two keys are equal - - - - - Indicate whether two keys are equal - - - - - Indicate whether two keys are equal - - - - - See Object.Equals - - - - - Indicate whether two keys are equal - - - - - See Object.GetHashCode - - - - - Obtains a string representation of the key - - - - - Create a key from a String - - - - - Create a key from a Byte[] - - - - - Obtain the key as a Byte[] - - - - - Obtain the key as a String - - - - - Concatenate two keys - - - - - Prepends p to this RedisKey, returning a new RedisKey. - - Avoids some allocations if possible, repeated Prepend/Appends make - it less possible. - - - - - Appends p to this RedisKey, returning a new RedisKey. - - Avoids some allocations if possible, repeated Prepend/Appends make - it less possible. - - - - - Represents a general-purpose result from redis, that may be cast into various anticipated types - - - - - Create a new RedisResult. - - - - - - Indicates whether this result was a null result - - - - - Interprets the result as a String - - - - - Interprets the result as a Byte[] - - - - - Interprets the result as a Double - - - - - Interprets the result as an Int64 - - - - - Interprets the result as an Int32 - - - - - Interprets the result as a Boolean - - - - - Interprets the result as a RedisValue - - - - - Interprets the result as a RedisKey - - - - - Interprets the result as a Nullable Double - - - - - Interprets the result as a Nullable Int64 - - - - - Interprets the result as a Nullable Int32 - - - - - Interprets the result as a Nullable Boolean - - - - - Interprets the result as an array of String - - - - - Interprets the result as an array of Byte[] - - - - - Interprets the result as an array of Double - - - - - Interprets the result as an array of Int64 - - - - - Interprets the result as an array of Int32 - - - - - Interprets the result as an array of Boolean - - - - - Interprets the result as an array of RedisValue - - - - - Interprets the result as an array of RedisKey - - - - - Interprets the result as an array of RedisResult + Communication via twemproxy The intrinsinc data-types supported by redis - http://redis.io/topics/data-types + https://redis.io/topics/data-types @@ -6061,229 +2256,46 @@ Strings are the most basic kind of Redis value. Redis Strings are binary safe, this means that a Redis string can contain any kind of data, for instance a JPEG image or a serialized Ruby object. A String value can be at max 512 Megabytes in length. - http://redis.io/commands#string + https://redis.io/commands#string Redis Lists are simply lists of strings, sorted by insertion order. It is possible to add elements to a Redis List pushing new elements on the head (on the left) or on the tail (on the right) of the list. - http://redis.io/commands#list + https://redis.io/commands#list Redis Sets are an unordered collection of Strings. It is possible to add, remove, and test for existence of members in O(1) (constant time regardless of the number of elements contained inside the Set). Redis Sets have the desirable property of not allowing repeated members. Adding the same element multiple times will result in a set having a single copy of this element. Practically speaking this means that adding a member does not require a check if exists then add operation. - http://redis.io/commands#set + https://redis.io/commands#set Redis Sorted Sets are, similarly to Redis Sets, non repeating collections of Strings. The difference is that every member of a Sorted Set is associated with score, that is used in order to take the sorted set ordered, from the smallest to the greatest score. While members are unique, scores may be repeated. - http://redis.io/commands#sorted_set + https://redis.io/commands#sorted_set Redis Hashes are maps between string fields and string values, so they are the perfect data type to represent objects (eg: A User with a number of fields like name, surname, age, and so forth) - http://redis.io/commands#hash + https://redis.io/commands#hash + + + + A Redis Stream is a data structure which models the behavior of an append only log but it has more + advanced features for manipulating the data contained within the stream. Each entry in a + stream contains a unique message ID and a list of name/value pairs containing the entry's data. + + https://redis.io/commands#stream The data-type was not recognised by the client library - - - Represents values that can be stored in redis - - - - - Represents the string "" - - - - - A null value - - - - - Indicates whether the value is a primitive integer - - - - - Indicates whether the value should be considered a null value - - - - - Indicates whether the value is either null or a zero-length value - - - - - Indicates whether the value is greater than zero-length - - - - - Indicates whether two RedisValue values are equivalent - - - - - Indicates whether two RedisValue values are equivalent - - - - - See Object.Equals() - - - - - Indicates whether two RedisValue values are equivalent - - - - - See Object.GetHashCode() - - - - - Returns a string representation of the value - - - - - Compare against a RedisValue for relative order - - - - - Creates a new RedisValue from an Int32 - - - - - Creates a new RedisValue from a nullable Int32 - - - - - Creates a new RedisValue from an Int64 - - - - - Creates a new RedisValue from a nullable Int64 - - - - - Creates a new RedisValue from a Double - - - - - Creates a new RedisValue from a nullable Double - - - - - Creates a new RedisValue from a String - - - - - Creates a new RedisValue from a Byte[] - - - - - Creates a new RedisValue from a Boolean - - - - - Creates a new RedisValue from a nullable Boolean - - - - - Converts the value to a Boolean - - - - - Converts the value to an Int32 - - - - - Converts the value to an Int64 - - - - - Converts the value to a Double - - - - - Converts the value to a nullable Double - - - - - Converts the value to a nullable Int64 - - - - - Converts the value to a nullable Int32 - - - - - Converts the value to a nullable Boolean - - - - - Converts the value to a String - - - - - Converts the value to a byte[] - - - - - Convert to a long if possible, returning true. - - Returns false otherwise. - - - - - Convert to a int if possible, returning true. - - Returns false otherwise. - - - - - Convert to a double if possible, returning true. - - Returns false otherwise. - - Additional operations to perform when making a server a master @@ -6306,7 +2318,12 @@ - Issue a SLAVEOF to all other known nodes, making this this master of all + Issue a REPLICAOF to all other known nodes, making this this master of all + + + + + Issue a REPLICAOF to all other known nodes, making this this master of all @@ -6314,6 +2331,68 @@ All additional operations + + + The underlying result type as defined by redis + + + + + No value was received + + + + + Basic strings typically represent status results such as "OK" + + + + + Error strings represent invalid operation results from the server + + + + + Integers are returned for count operations and some integer-based increment operations + + + + + Bulk strings represent typical user content values + + + + + Multi-bulk replies represent complex results such as arrays + + + + + + If an IProfiledCommand is a retransmission of a previous command, this enum + is used to indicate what prompted the retransmission. + + + This can be used to distinguish between transient causes (moving hashslots, joining nodes, etc.) + and incorrect routing. + + + + + + No stated reason + + + + + Issued to investigate which node owns a key + + + + + A node has indicated that it does *not* own the given key + + The type of save operation to perform @@ -6323,84 +2402,19 @@ Instruct Redis to start an Append Only File rewrite process. The rewrite will create a small optimized version of the current Append Only File. - http://redis.io/commands/bgrewriteaof + https://redis.io/commands/bgrewriteaof Save the DB in background. The OK code is immediately returned. Redis forks, the parent continues to serve the clients, the child saves the DB on disk then exits. A client my be able to check if the operation succeeded using the LASTSAVE command. - http://redis.io/commands/bgsave + https://redis.io/commands/bgsave Save the DB in foreground. This is almost never a good thing to do, and could cause significant blocking. Only do this if you know you need to save - http://redis.io/commands/save - - - - Turns a script with @namedParameters into a LuaScript that can be executed - against a given IDatabase(Async) object - - - - - Determines whether or not the given type can be used to provide parameters for the given LuaScript. - - - - - Creates a Func that extracts parameters from the given type for use by a LuaScript. - - Members that are RedisKey's get extracted to be passed in as keys to redis; all members that - appear in the script get extracted as RedisValue arguments to be sent up as args. - - We send all values as arguments so we don't have to prepare the same script for different parameter - types. - - The created Func takes a RedisKey, which will be prefixed to all keys (and arguments of type RedisKey) for - keyspace isolation. - - - - - Illustrates the queues associates with this server - - - - - The endpoint to which this data relates (this can be null if the data represents all servers) - - - - - Counters associated with the interactive (non pub-sub) connection - - - - - Counters associated with other ambient activity - - - - - Counters associated with the subscription (pub-sub) connection - - - - - Indicates the total number of outstanding items against this server - - - - - See Object.ToString(); - - - - - Computes the hash-slot that would be used by the given key - + https://redis.io/commands/save @@ -6467,46 +2481,8225 @@ The data is persisted even if save points are NOT configured - + - Allows callbacks from SocketManager as work is discovered + Specifies how to compare elements for sorting - + - Indicates that a socket has connected + Elements are interpreted as a double-precision floating point number and sorted numerically - + - Indicates that the socket has signalled an error condition + Elements are sorted using their alphabetic form (Redis is UTF-8 aware as long as the !LC_COLLATE environment variable is set at the server) - + - Indicates that data is available on the socket, and that the consumer should read synchronously from the socket while there is data + Indicates when this operation should be performed (only some variations are legal in a given context) - + - Indicates that we cannot know whether data is available, and that the consume should commence reading asynchronously + The operation should occur whether or not there is an existing value + + + The operation should only occur when there is an existing value + + + + + The operation should only occur when there is not an existing value + + + + + Indicates that a command was illegal and was not sent to the server + + + + + Creates a new . + + The message for the exception. + + + + Creates a new . + + The message for the exception. + The inner exception. + + + + Indicates the time allotted for a command or operation has expired. + + + + + Creates a new . + + The message for the exception. + The command status, as of when the timeout happened. + + + + status of the command while communicating with Redis + + + + + Serialization implementation; not intended for general usage + + Serialization info. + Serialization context. + + + + Indicates a connection fault when communicating with redis + + + + + Creates a new . + + The type of connection failure. + The message for the exception. + + + + Creates a new . + + The type of connection failure. + The message for the exception. + The inner exception. + + + + Creates a new . + + The type of connection failure. + The message for the exception. + The inner exception. + The status of the command. + + + + The type of connection failure + + + + + status of the command while communicating with Redis + + + + + Serialization implementation; not intended for general usage + + Serialization info. + Serialization context. + + + + Indicates an issue communicating with redis + + + + + Creates a new . + + The message for the exception. + + + + Creates a new . + + The message for the exception. + The inner exception. + + + + Deserialization constructor; not intended for general usage + + Serialization info. + Serialization context. + + + + Indicates an exception raised by a redis server + + + + + Creates a new . + + The message for the exception. + + + + Represents a retry policy that performs retries, using a randomized exponential back off scheme to determine the interval between retries. + + + + + Initializes a new instance using the specified back off interval with default maxDeltaBackOffMilliseconds of 10 seconds + + time in milliseconds for the back-off interval between retries + + + + Initializes a new instance using the specified back off interval. + + time in milliseconds for the back-off interval between retries + time in milliseconds for the maximum value that the back-off interval can exponentially grow up to + + + + This method is called by the ConnectionMultiplexer to determine if a reconnect operation can be retried now. + + The number of times reconnect retries have already been made by the ConnectionMultiplexer while it was in the connecting state + Total elapsed time in milliseconds since the last reconnect retry was made + + + + Utility methods + + + + + Create a dictionary from an array of HashEntry values + + The entry to convert to a dictionary. + + + + Create a dictionary from an array of HashEntry values + + The entry to convert to a dictionary. + + + + Create a dictionary from an array of SortedSetEntry values + + The set entries to convert to a dictionary. + + + + Create a dictionary from an array of SortedSetEntry values + + The set entries to convert to a dictionary. + + + + Create a dictionary from an array of key/value pairs + + The pairs to convert to a dictionary. + + + + Create a dictionary from an array of key/value pairs + + The pairs to convert to a dictionary. + + + + Create a dictionary from an array of string pairs + + The pairs to convert to a dictionary. + + + + Create an array of RedisValues from an array of strings. + + The string array to convert to RedisValues + + + + Create an array of strings from an array of values + + The values to convert to an array. + + + + Represent a byte-Lease as a read-only Stream + + The lease upon which to base the stream + If true, disposing the stream also disposes the lease + + + + Decode a byte-Lease as a String, optionally specifying the encoding (UTF-8 if omitted) + + The bytes to decode + The encoding to use + + + + Decode a byte-Lease as a String, optionally specifying the encoding (UTF-8 if omitted) + + The bytes to decode + The encoding to use + + + + GeoRadius command options. + + + + + No Options + + + + + Redis will return the coordinates of any results. + + + + + Redis will return the distance from center for all results. + + + + + Redis will return the geo hash value as an integer. (This is the score in the sorted set) + + + + + Populates the commonly used values from the entry (the integer hash is not returned as it is not commonly useful) + + + + + The result of a GeoRadius command. + + + + + Indicate the member being represented + + + + + The matched member. + + + + + The distance of the matched member from the center of the geo radius command. + + + + + The hash value of the matched member as an integer. (The key in the sorted set) + + Note that this is not the same as the hash returned from GeoHash + + + + The coordinates of the matched member. + + + + + Returns a new GeoRadiusResult + + The value from the result. + Tthe distance from the result. + The hash of the result. + The geo position of the result. + + + + Describes the longitude and latitude of a GeoEntry + + + + + The Latitude of the GeoPosition + + + + + The Logitude of the GeoPosition + + + + + Creates a new GeoPosition + + + + + + + See Object.ToString() + + + + + See Object.GetHashCode() + Diagonals not an issue in the case of lat/long + + + Diagonals are not an issue in the case of lat/long. + + + + + Compares two values for equality + + The to compare to. + + + + Compares two values for equality + + The to compare to. + + + + Compares two values for equality + + The first position to compare. + The second position to compare. + + + + Compares two values for non-equality + + The first position to compare. + The second position to compare. + + + + Describes a GeoEntry element with the corresponding value + GeoEntries are stored in redis as SortedSetEntries + + + + + The name of the geo entry + + + + + Describes the longitude and latitude of a GeoEntry + + + + + Initializes a GeoEntry value + + The longitude position to use. + The latitude position to use. + The value to store for this position. + + + + The longitude of the geo entry + + + + + The latitude of the geo entry + + + + + See Object.ToString() + + + + + See Object.GetHashCode() + + + + + Compares two values for equality + + The to compare to. + + + + Compares two values for equality + + The to compare to. + + + + Compares two values for equality + + The first entry to compare. + The second entry to compare. + + + + Compares two values for non-equality + + The first entry to compare. + The second entry to compare. + + + + Describes a hash-field (a name/value pair) + + + + + Initializes a value. + + The name for this hash entry. + The value for this hash entry. + + + + The name of the hash field + + + + + The value of the hash field + + + + + The name of the hash field + + + + + Converts to a key/value pair + + The to create a from. + + + + Converts from a key/value pair + + The to get a from. + + + + See Object.ToString() + + + + + See Object.GetHashCode() + + + + + Compares two values for equality. + + The to compare to. + + + + Compares two values for equality. + + The to compare to. + + + + Compares two values for equality + + The first to compare. + The second to compare. + + + + Compares two values for non-equality + + The first to compare. + The second to compare. + + + + Contains information about individual hash-slot relocations + + + + + The hash-slot that was relocated + + + + + The old endpoint for this hash-slot (if known) + + + + + The new endpoint for this hash-slot (if known) + + + + + This constructor is only for testing purposes. + + The source of the event. + Hash slot. + Old endpoint. + New endpoint. + + + + Represents a block of operations that will be sent to the server together; + this can be useful to reduce packet fragmentation on slow connections - it + can improve the time to get *all* the operations processed, with the trade-off + of a slower time to get the *first* operation processed; this is usually + a good thing. Unless this batch is a transaction, there is no guarantee + that these operations will be processed either contiguously or atomically by the server. + + + + + Execute the batch operation, sending all queued commands to the server. + Note that this operation is neither synchronous nor truly asynchronous - it + simply enqueues the buffered messages. To check on completion, you should + check the individual responses. + + + + + Represents the abstract multiplexer API + + + + + Gets the client-name that will be used on all new connections + + + + + Gets the configuration of the connection + + + + + Gets the timeout associated with the connections + + + + + The number of operations that have been performed on all connections + + + + + Gets or sets whether asynchronous operations should be invoked in a way that guarantees their original delivery order + + + + + Indicates whether any servers are connected + + + + + Indicates whether any servers are connected + + + + + Should exceptions include identifiable details? (key names, additional .Data annotations) + + + + + Limit at which to start recording unusual busy patterns (only one log will be retained at a time; + set to a negative value to disable this feature) + + + + + Register a callback to provide an on-demand ambient session provider based on the + calling context; the implementing code is responsible for reliably resolving the same provider + based on ambient context, or returning null to not profile + + The profiling session provider. + + + + Get summary statistics associates with this server + + + + + A server replied with an error message; + + + + + Raised whenever a physical connection fails + + + + + Raised whenever an internal error occurs (this is primarily for debugging) + + + + + Raised whenever a physical connection is established + + + + + Raised when configuration changes are detected + + + + + Raised when nodes are explicitly requested to reconfigure via broadcast; + this usually means master/replica changes + + + + + Gets all endpoints defined on the server + + Whether to return only the explicitly configured endpoints. + + + + Wait for a given asynchronous operation to complete (or timeout) + + The task to wait on. + + + + Wait for a given asynchronous operation to complete (or timeout) + + The type in . + The task to wait on. + + + + Wait for the given asynchronous operations to complete (or timeout) + + The tasks to wait on. + + + + Raised when a hash-slot has been relocated + + + + + Compute the hash-slot of a specified key + + The key to get a slot ID for. + + + + Obtain a pub/sub subscriber connection to the specified server + + The async state to pass to the created . + + + + Obtain an interactive connection to a database inside redis + + The database ID to get. + The async state to pass to the created . + + + + Obtain a configuration API for an individual server + + The host to get a server for. + The specific port for to get a server for. + The async state to pass to the created . + + + + Obtain a configuration API for an individual server + + The "host:port" string to get a server for. + The async state to pass to the created . + + + + Obtain a configuration API for an individual server + + The host to get a server for. + The specific port for to get a server for. + + + + Obtain a configuration API for an individual server + + The endpoint to get a server for. + The async state to pass to the created . + + + + Reconfigure the current connections based on the existing configuration + + The log to write output to. + + + + Reconfigure the current connections based on the existing configuration + + The log to write output to. + + + + Provides a text overview of the status of all connections + + + + + Provides a text overview of the status of all connections + + The log to write output to. + + + + See Object.ToString() + + + + + Close all connections and release all resources associated with this object + + Whether to allow in-queue commands to complete first. + + + + Close all connections and release all resources associated with this object + + Whether to allow in-queue commands to complete first. + + + + Obtains the log of unusual busy patterns + + + + + Resets the log of unusual busy patterns + + + + + Request all compatible clients to reconfigure or reconnect + + The command flags to use. + The number of instances known to have received the message (however, the actual number can be higher; returns -1 if the operation is pending) + + + + Request all compatible clients to reconfigure or reconnect + + The command flags to use. + The number of instances known to have received the message (however, the actual number can be higher) + + + + Get the hash-slot associated with a given key, if applicable; this can be useful for grouping operations + + The key to get a the slot for. + + + + Write the configuration of all servers to an output stream + + The destination stream to write the export to. + The options to use for this export. + + + + Describes functionality that is common to both standalone redis servers and redis clusters + + + + + The numeric identifier of this database + + + + + Allows creation of a group of operations that will be sent to the server as a single unit, + but which may or may not be processed on the server contiguously. + + The async object state to be passed into the created . + The created batch. + + + + Allows creation of a group of operations that will be sent to the server as a single unit, + and processed on the server as a single unit. + + The async object state to be passed into the created . + The created transaction. + + + + Atomically transfer a key from a source Redis instance to a destination Redis instance. On success the key is deleted from the original instance by default, and is guaranteed to exist in the target instance. + + The key to migrate. + The server to migrate the key to. + The database to migrate the key to. + The timeout to use for the transfer. + The options to use for this migration. + The flags to use for this operation. + https://redis.io/commands/MIGRATE + + + + Returns the raw DEBUG OBJECT output for a key; this command is not fully documented and should be avoided unless you have good reason, and then avoided anyway. + + The key to debug. + The flags to use for this migration. + The raw output from DEBUG OBJECT. + https://redis.io/commands/debug-object + + + + Add the specified member to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members. + + The key of the set. + The longitude of geo entry. + The latitude of the geo entry. + The value to set at this entry. + The flags to use for this operation. + True if the specified member was not already present in the set, else False. + https://redis.io/commands/geoadd + + + + Add the specified member to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members. + + The key of the set. + The geo value to store. + The flags to use for this operation. + True if the specified member was not already present in the set, else False + https://redis.io/commands/geoadd + + + + Add the specified members to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members. + + The key of the set. + The geo values add to the set. + The flags to use for this operation. + The number of elements that were added to the set, not including all the elements already present into the set. + https://redis.io/commands/geoadd + + + + Removes the specified member from the geo sorted set stored at key. Non existing members are ignored. + + The key of the set. + The geo value to remove. + The flags to use for this operation. + True if the member existed in the sorted set and was removed; False otherwise. + https://redis.io/commands/zrem + + + + Return the distance between two members in the geospatial index represented by the sorted set. + + The key of the set. + The first member to check. + The second member to check. + The unit of distance to return (defaults to meters). + The flags to use for this operation. + The command returns the distance as a double (represented as a string) in the specified unit, or NULL if one or both the elements are missing. + https://redis.io/commands/geodist + + + + Return valid Geohash strings representing the position of one or more elements in a sorted set value representing a geospatial index (where elements were added using GEOADD). + + The key of the set. + The members to get. + The flags to use for this operation. + The command returns an array where each element is the Geohash corresponding to each member name passed as argument to the command. + https://redis.io/commands/geohash + + + + Return valid Geohash strings representing the position of one or more elements in a sorted set value representing a geospatial index (where elements were added using GEOADD). + + The key of the set. + The member to get. + The flags to use for this operation. + The command returns an array where each element is the Geohash corresponding to each member name passed as argument to the command. + https://redis.io/commands/geohash + + + + Return the positions (longitude,latitude) of all the specified members of the geospatial index represented by the sorted set at key. + + The key of the set. + The members to get. + The flags to use for this operation. + The command returns an array where each element is a two elements array representing longitude and latitude (x,y) of each member name passed as argument to the command.Non existing elements are reported as NULL elements of the array. + https://redis.io/commands/geopos + + + + Return the positions (longitude,latitude) of all the specified members of the geospatial index represented by the sorted set at key. + + The key of the set. + The member to get. + The flags to use for this operation. + The command returns an array where each element is a two elements array representing longitude and latitude (x,y) of each member name passed as argument to the command.Non existing elements are reported as NULL elements of the array. + https://redis.io/commands/geopos + + + + Return the members of a sorted set populated with geospatial information using GEOADD, which are within the borders of the area specified with the center location and the maximum distance from the center (the radius). + + The key of the set. + The member to get a radius of results from. + The radius to check. + The unit of (defaults to meters). + The count of results to get, -1 for unlimited. + The order of the results. + The search options to use. + The flags to use for this operation. + The results found within the radius, if any. + https://redis.io/commands/georadius + + + + Return the members of a sorted set populated with geospatial information using GEOADD, which are within the borders of the area specified with the center location and the maximum distance from the center (the radius). + + The key of the set. + The longitude of the point to get a radius of results from. + The latitude of the point to get a radius of results from. + The radius to check. + The unit of (defaults to meters). + The count of results to get, -1 for unlimited. + The order of the results. + The search options to use. + The flags to use for this operation. + The results found within the radius, if any. + https://redis.io/commands/georadius + + + + Decrements the number stored at field in the hash stored at key by decrement. If key does not exist, a new key holding a hash is created. If field does not exist the value is set to 0 before the operation is performed. + + The key of the hash. + The field in the hash to decrement. + The amount to decrement by. + The flags to use for this operation. + The value at field after the decrement operation. + The range of values supported by HINCRBY is limited to 64 bit signed integers. + https://redis.io/commands/hincrby + + + + Decrement the specified field of an hash stored at key, and representing a floating point number, by the specified decrement. If the field does not exist, it is set to 0 before performing the operation. + + The key of the hash. + The field in the hash to decrement. + The amount to decrement by. + The flags to use for this operation. + The value at field after the decrement operation. + The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation. + https://redis.io/commands/hincrbyfloat + + + + Removes the specified fields from the hash stored at key. Non-existing fields are ignored. Non-existing keys are treated as empty hashes and this command returns 0. + + The key of the hash. + The field in the hash to delete. + The flags to use for this operation. + The number of fields that were removed. + https://redis.io/commands/hdel + + + + Removes the specified fields from the hash stored at key. Non-existing fields are ignored. Non-existing keys are treated as empty hashes and this command returns 0. + + The key of the hash. + The fields in the hash to delete. + The flags to use for this operation. + The number of fields that were removed. + https://redis.io/commands/hdel + + + + Returns if field is an existing field in the hash stored at key. + + The key of the hash. + The field in the hash to check. + The flags to use for this operation. + 1 if the hash contains field. 0 if the hash does not contain field, or key does not exist. + https://redis.io/commands/hexists + + + + Returns the value associated with field in the hash stored at key. + + The key of the hash. + The field in the hash to get. + The flags to use for this operation. + The value associated with field, or nil when field is not present in the hash or key does not exist. + https://redis.io/commands/hget + + + + Returns the value associated with field in the hash stored at key. + + The key of the hash. + The field in the hash to get. + The flags to use for this operation. + The value associated with field, or nil when field is not present in the hash or key does not exist. + https://redis.io/commands/hget + + + + Returns the values associated with the specified fields in the hash stored at key. + For every field that does not exist in the hash, a nil value is returned.Because a non-existing keys are treated as empty hashes, running HMGET against a non-existing key will return a list of nil values. + + The key of the hash. + The fields in the hash to get. + The flags to use for this operation. + List of values associated with the given fields, in the same order as they are requested. + https://redis.io/commands/hmget + + + + Returns all fields and values of the hash stored at key. + + The key of the hash to get all entries from. + The flags to use for this operation. + List of fields and their values stored in the hash, or an empty list when key does not exist. + https://redis.io/commands/hgetall + + + + Increments the number stored at field in the hash stored at key by increment. If key does not exist, a new key holding a hash is created. If field does not exist the value is set to 0 before the operation is performed. + + The key of the hash. + The field in the hash to increment. + The amount to increment by. + The flags to use for this operation. + The value at field after the increment operation. + The range of values supported by HINCRBY is limited to 64 bit signed integers. + https://redis.io/commands/hincrby + + + + Increment the specified field of an hash stored at key, and representing a floating point number, by the specified increment. If the field does not exist, it is set to 0 before performing the operation. + + The key of the hash. + The field in the hash to increment. + The amount to increment by. + The flags to use for this operation. + The value at field after the increment operation. + The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation. + https://redis.io/commands/hincrbyfloat + + + + Returns all field names in the hash stored at key. + + The key of the hash. + The flags to use for this operation. + List of fields in the hash, or an empty list when key does not exist. + https://redis.io/commands/hkeys + + + + Returns the number of fields contained in the hash stored at key. + + The key of the hash. + The flags to use for this operation. + The number of fields in the hash, or 0 when key does not exist. + https://redis.io/commands/hlen + + + + The HSCAN command is used to incrementally iterate over a hash. + + The key of the hash. + The pattern of keys to get entries for. + The page size to iterate by. + The flags to use for this operation. + Yields all elements of the hash matching the pattern. + https://redis.io/commands/hscan + + + + The HSCAN command is used to incrementally iterate over a hash; note: to resume an iteration via cursor, cast the original enumerable or enumerator to IScanningCursor. + + The key of the hash. + The pattern of keys to get entries for. + The page size to iterate by. + The cursor position to start at. + The page offset to start at. + The flags to use for this operation. + Yields all elements of the hash matching the pattern. + https://redis.io/commands/hscan + + + + Sets the specified fields to their respective values in the hash stored at key. This command overwrites any specified fields that already exist in the hash, leaving other unspecified fields untouched. If key does not exist, a new key holding a hash is created. + + The key of the hash. + The entries to set in the hash. + The flags to use for this operation. + https://redis.io/commands/hmset + + + + Sets field in the hash stored at key to value. If key does not exist, a new key holding a hash is created. If field already exists in the hash, it is overwritten. + + The key of the hash. + The field to set in the hash. + The value to set. + Which conditions under which to set the field value (defaults to always). + The flags to use for this operation. + 1 if field is a new field in the hash and value was set. 0 if field already exists in the hash and the value was updated. + https://redis.io/commands/hset + https://redis.io/commands/hsetnx + + + + Returns the string length of the value associated with field in the hash stored at key. + + The key of the hash. + The field containing the string + The flags to use for this operation. + the length of the string at field, or 0 when key does not exist. + https://redis.io/commands/hstrlen + + + + Returns all values in the hash stored at key. + + The key of the hash. + The flags to use for this operation. + List of values in the hash, or an empty list when key does not exist. + https://redis.io/commands/hvals + + + + Adds the element to the HyperLogLog data structure stored at the variable name specified as first argument. + + The key of the hyperloglog. + The value to add. + The flags to use for this operation. + True if at least 1 HyperLogLog internal register was altered, false otherwise. + https://redis.io/commands/pfadd + + + + Adds all the element arguments to the HyperLogLog data structure stored at the variable name specified as first argument. + + The key of the hyperloglog. + The values to add. + The flags to use for this operation. + True if at least 1 HyperLogLog internal register was altered, false otherwise. + https://redis.io/commands/pfadd + + + + Returns the approximated cardinality computed by the HyperLogLog data structure stored at the specified variable, or 0 if the variable does not exist. + + The key of the hyperloglog. + The flags to use for this operation. + The approximated number of unique elements observed via HyperLogLogAdd. + https://redis.io/commands/pfcount + + + + Returns the approximated cardinality of the union of the HyperLogLogs passed, by internally merging the HyperLogLogs stored at the provided keys into a temporary hyperLogLog, or 0 if the variable does not exist. + + The keys of the hyperloglogs. + The flags to use for this operation. + The approximated number of unique elements observed via HyperLogLogAdd. + https://redis.io/commands/pfcount + + + + Merge multiple HyperLogLog values into an unique value that will approximate the cardinality of the union of the observed Sets of the source HyperLogLog structures. + + The key of the merged hyperloglog. + The key of the first hyperloglog to merge. + The key of the first hyperloglog to merge. + The flags to use for this operation. + https://redis.io/commands/pfmerge + + + + Merge multiple HyperLogLog values into an unique value that will approximate the cardinality of the union of the observed Sets of the source HyperLogLog structures. + + The key of the merged hyperloglog. + The keys of the hyperloglogs to merge. + The flags to use for this operation. + https://redis.io/commands/pfmerge + + + + Indicate exactly which redis server we are talking to. + + The key to check. + The flags to use for this operation. + The endpoint serving the key. + + + + Removes the specified key. A key is ignored if it does not exist. + If UNLINK is available (Redis 4.0+), it will be used. + + The key to delete. + The flags to use for this operation. + True if the key was removed. + https://redis.io/commands/del + https://redis.io/commands/unlink + + + + Removes the specified keys. A key is ignored if it does not exist. + If UNLINK is available (Redis 4.0+), it will be used. + + The keys to delete. + The flags to use for this operation. + The number of keys that were removed. + https://redis.io/commands/del + https://redis.io/commands/unlink + + + + Serialize the value stored at key in a Redis-specific format and return it to the user. The returned value can be synthesized back into a Redis key using the RESTORE command. + + The key to dump. + The flags to use for this operation. + the serialized value. + https://redis.io/commands/dump + + + + Returns if key exists. + + The key to check. + The flags to use for this operation. + 1 if the key exists. 0 if the key does not exist. + https://redis.io/commands/exists + + + + Indicates how many of the supplied keys exists. + + The keys to check. + The flags to use for this operation. + The number of keys that existed. + https://redis.io/commands/exists + + + + Set a timeout on key. After the timeout has expired, the key will automatically be deleted. A key with an associated timeout is said to be volatile in Redis terminology. + + The key to set the expiration for. + The timeout to set. + The flags to use for this operation. + 1 if the timeout was set. 0 if key does not exist or the timeout could not be set. + If key is updated before the timeout has expired, then the timeout is removed as if the PERSIST command was invoked on key. + For Redis versions < 2.1.3, existing timeouts cannot be overwritten. So, if key already has an associated timeout, it will do nothing and return 0. Since Redis 2.1.3, you can update the timeout of a key. It is also possible to remove the timeout using the PERSIST command. See the page on key expiry for more information. + https://redis.io/commands/expire + https://redis.io/commands/pexpire + https://redis.io/commands/persist + + + + Set a timeout on key. After the timeout has expired, the key will automatically be deleted. A key with an associated timeout is said to be volatile in Redis terminology. + + The key to set the expiration for. + The exact date to expiry to set. + The flags to use for this operation. + 1 if the timeout was set. 0 if key does not exist or the timeout could not be set. + If key is updated before the timeout has expired, then the timeout is removed as if the PERSIST command was invoked on key. + For Redis versions < 2.1.3, existing timeouts cannot be overwritten. So, if key already has an associated timeout, it will do nothing and return 0. Since Redis 2.1.3, you can update the timeout of a key. It is also possible to remove the timeout using the PERSIST command. See the page on key expiry for more information. + https://redis.io/commands/expireat + https://redis.io/commands/pexpireat + https://redis.io/commands/persist + + + + Returns the time since the object stored at the specified key is idle (not requested by read or write operations) + + The key to get the time of. + The flags to use for this operation. + The time since the object stored at the specified key is idle + https://redis.io/commands/object + + + + Move key from the currently selected database (see SELECT) to the specified destination database. When key already exists in the destination database, or it does not exist in the source database, it does nothing. It is possible to use MOVE as a locking primitive because of this. + + The key to move. + The database to move the key to. + The flags to use for this operation. + 1 if key was moved; 0 if key was not moved. + https://redis.io/commands/move + + + + Remove the existing timeout on key, turning the key from volatile (a key with an expire set) to persistent (a key that will never expire as no timeout is associated). + + The key to persist. + The flags to use for this operation. + 1 if the timeout was removed. 0 if key does not exist or does not have an associated timeout. + https://redis.io/commands/persist + + + + Return a random key from the currently selected database. + + The flags to use for this operation. + The random key, or nil when the database is empty. + https://redis.io/commands/randomkey + + + + Renames key to newkey. It returns an error when the source and destination names are the same, or when key does not exist. + + The key to rename. + The key to rename to. + What conditions to rename under (defaults to always). + The flags to use for this operation. + True if the key was renamed, false otherwise. + https://redis.io/commands/rename + https://redis.io/commands/renamenx + + + + Create a key associated with a value that is obtained by deserializing the provided serialized value (obtained via DUMP). + If ttl is 0 the key is created without any expire, otherwise the specified expire time(in milliseconds) is set. + + The key to restore. + The value of the key. + The expiry to set. + The flags to use for this operation. + https://redis.io/commands/restore + + + + Returns the remaining time to live of a key that has a timeout. This introspection capability allows a Redis client to check how many seconds a given key will continue to be part of the dataset. + + The key to check. + The flags to use for this operation. + TTL, or nil when key does not exist or does not have a timeout. + https://redis.io/commands/ttl + + + + Returns the string representation of the type of the value stored at key. The different types that can be returned are: string, list, set, zset and hash. + + The key to get the type of. + The flags to use for this operation. + Type of key, or none when key does not exist. + https://redis.io/commands/type + + + + Returns the element at index index in the list stored at key. The index is zero-based, so 0 means the first element, 1 the second element and so on. Negative indices can be used to designate elements starting at the tail of the list. Here, -1 means the last element, -2 means the penultimate and so forth. + + The key of the list. + The index position to ge the value at. + The flags to use for this operation. + The requested element, or nil when index is out of range. + https://redis.io/commands/lindex + + + + Inserts value in the list stored at key either before or after the reference value pivot. + When key does not exist, it is considered an empty list and no operation is performed. + + The key of the list. + The value to insert after. + The value to insert. + The flags to use for this operation. + The length of the list after the insert operation, or -1 when the value pivot was not found. + https://redis.io/commands/linsert + + + + Inserts value in the list stored at key either before or after the reference value pivot. + When key does not exist, it is considered an empty list and no operation is performed. + + The key of the list. + The value to insert before. + The value to insert. + The flags to use for this operation. + The length of the list after the insert operation, or -1 when the value pivot was not found. + https://redis.io/commands/linsert + + + + Removes and returns the first element of the list stored at key. + + The key of the list. + The flags to use for this operation. + The value of the first element, or nil when key does not exist. + https://redis.io/commands/lpop + + + + Removes and returns count elements from the tail of the list stored at key. + If there are less elements in the list than count, removes and returns all the elements in the list. + + The key of the list. + The number of items to remove. + The flags to use for this operation. + Array of values that were popped, or nil if the key doesn't exist. + https://redis.io/commands/lpop + + + + Insert the specified value at the head of the list stored at key. If key does not exist, it is created as empty list before performing the push operations. + + The key of the list. + The value to add to the head of the list. + Which conditions to add to the list under (defaults to always). + The flags to use for this operation. + The length of the list after the push operations. + https://redis.io/commands/lpush + https://redis.io/commands/lpushx + + + + Insert the specified value at the head of the list stored at key. If key does not exist, it is created as empty list before performing the push operations. + + The key of the list. + The values to add to the head of the list. + Which conditions to add to the list under (defaults to always). + The flags to use for this operation. + The length of the list after the push operations. + https://redis.io/commands/lpush + https://redis.io/commands/lpushx + + + + Insert all the specified values at the head of the list stored at key. If key does not exist, it is created as empty list before performing the push operations. + Elements are inserted one after the other to the head of the list, from the leftmost element to the rightmost element. So for instance the command LPUSH mylist a b c will result into a list containing c as first element, b as second element and a as third element. + + The key of the list. + The values to add to the head of the list. + The flags to use for this operation. + The length of the list after the push operations. + https://redis.io/commands/lpush + + + + Returns the length of the list stored at key. If key does not exist, it is interpreted as an empty list and 0 is returned. + + The key of the list. + The flags to use for this operation. + The length of the list at key. + https://redis.io/commands/llen + + + + Returns the specified elements of the list stored at key. The offsets start and stop are zero-based indexes, with 0 being the first element of the list (the head of the list), 1 being the next element and so on. + These offsets can also be negative numbers indicating offsets starting at the end of the list.For example, -1 is the last element of the list, -2 the penultimate, and so on. + Note that if you have a list of numbers from 0 to 100, LRANGE list 0 10 will return 11 elements, that is, the rightmost item is included. + + The key of the list. + The start index of the list. + The stop index of the list. + The flags to use for this operation. + List of elements in the specified range. + https://redis.io/commands/lrange + + + + Removes the first count occurrences of elements equal to value from the list stored at key. The count argument influences the operation in the following ways: + count > 0: Remove elements equal to value moving from head to tail. + count < 0: Remove elements equal to value moving from tail to head. + count = 0: Remove all elements equal to value. + + The key of the list. + The value to remove from the list. + The count behavior (see method summary). + The flags to use for this operation. + The number of removed elements. + https://redis.io/commands/lrem + + + + Removes and returns the last element of the list stored at key. + + The key of the list. + The flags to use for this operation. + The element being popped. + https://redis.io/commands/rpop + + + + Removes and returns count elements from the head of the list stored at key. + If there are less elements in the list than count, removes and returns all the elements in the list. + + The key of the list. + tThe number of items to remove. + The flags to use for this operation. + Array of values that were popped, or nil if the key doesn't exist. + https://redis.io/commands/rpop + + + + Atomically returns and removes the last element (tail) of the list stored at source, and pushes the element at the first element (head) of the list stored at destination. + + The key of the source list. + The key of the destination list. + The flags to use for this operation. + The element being popped and pushed. + https://redis.io/commands/rpoplpush + + + + Insert the specified value at the tail of the list stored at key. If key does not exist, it is created as empty list before performing the push operation. + + The key of the list. + The value to add to the tail of the list. + Which conditions to add to the list under. + The flags to use for this operation. + The length of the list after the push operation. + https://redis.io/commands/rpush + https://redis.io/commands/rpushx + + + + Insert the specified value at the tail of the list stored at key. If key does not exist, it is created as empty list before performing the push operation. + + The key of the list. + The values to add to the tail of the list. + Which conditions to add to the list under. + The flags to use for this operation. + The length of the list after the push operation. + https://redis.io/commands/rpush + https://redis.io/commands/rpushx + + + + Insert all the specified values at the tail of the list stored at key. If key does not exist, it is created as empty list before performing the push operation. + Elements are inserted one after the other to the tail of the list, from the leftmost element to the rightmost element. So for instance the command RPUSH mylist a b c will result into a list containing a as first element, b as second element and c as third element. + + The key of the list. + The values to add to the tail of the list. + The flags to use for this operation. + The length of the list after the push operation. + https://redis.io/commands/rpush + + + + Sets the list element at index to value. For more information on the index argument, see ListGetByIndex. An error is returned for out of range indexes. + + The key of the list. + The index to set the value at. + The values to add to the list. + The flags to use for this operation. + https://redis.io/commands/lset + + + + Trim an existing list so that it will contain only the specified range of elements specified. Both start and stop are zero-based indexes, where 0 is the first element of the list (the head), 1 the next element and so on. + For example: LTRIM foobar 0 2 will modify the list stored at foobar so that only the first three elements of the list will remain. + start and end can also be negative numbers indicating offsets from the end of the list, where -1 is the last element of the list, -2 the penultimate element and so on. + + The key of the list. + The start index of the list to trim to. + The end index of the list to trim to. + The flags to use for this operation. + https://redis.io/commands/ltrim + + + + Extends a lock, if the token value is correct. + + The key of the lock. + The value to set at the key. + The expiration of the lock key. + The flags to use for this operation. + True if the lock was successfully extended. + + + + Queries the token held against a lock. + + The key of the lock. + The flags to use for this operation. + The current value of the lock, if any. + + + + Releases a lock, if the token value is correct. + + The key of the lock. + The value at the key tht must match. + The flags to use for this operation. + True if the lock was successfully released, false otherwise. + + + + Takes a lock (specifying a token value) if it is not already taken. + + The key of the lock. + The value to set at the key. + The expiration of the lock key. + The flags to use for this operation. + True if the lock was successfully taken, false otherwise. + + + + Posts a message to the given channel. + + The channel to publish to. + The message to send. + The flags to use for this operation. + The number of clients that received the message. + https://redis.io/commands/publish + + + + Execute an arbitrary command against the server; this is primarily intended for + executing modules, but may also be used to provide access to new features that lack + a direct API. + + The command to run. + The arguments to pass for the command. + This API should be considered an advanced feature; inappropriate use can be harmful + A dynamic representation of the command's result + + + + Execute an arbitrary command against the server; this is primarily intended for + executing modules, but may also be used to provide access to new features that lack + a direct API. + + The command to run. + The arguments to pass for the command. + The flags to use for this operation. + This API should be considered an advanced feature; inappropriate use can be harmful + A dynamic representation of the command's result + + + + Execute a Lua script against the server. + + The script to execute. + The keys to execute against. + The values to execute against. + The flags to use for this operation. + A dynamic representation of the script's result + https://redis.io/commands/eval + https://redis.io/commands/evalsha + + + + Execute a Lua script against the server using just the SHA1 hash + + The hash of the script to execute. + The keys to execute against. + The values to execute against. + The flags to use for this operation. + A dynamic representation of the script's result + https://redis.io/commands/evalsha + + + + Execute a lua script against the server, using previously prepared script. + Named parameters, if any, are provided by the `parameters` object. + + The script to execute. + The parameters to pass to the script. + The flags to use for this operation. + A dynamic representation of the script's result + https://redis.io/commands/eval + + + + Execute a lua script against the server, using previously prepared and loaded script. + This method sends only the SHA1 hash of the lua script to Redis. + Named parameters, if any, are provided by the `parameters` object. + + The already-loaded script to execute. + The parameters to pass to the script. + The flags to use for this operation. + A dynamic representation of the script's result + https://redis.io/commands/eval + + + + Add the specified member to the set stored at key. + Specified members that are already a member of this set are ignored. + If key does not exist, a new set is created before adding the specified members. + + The key of the set. + The value to add to the set. + The flags to use for this operation. + True if the specified member was not already present in the set, else False + https://redis.io/commands/sadd + + + + Add the specified members to the set stored at key. + Specified members that are already a member of this set are ignored. + If key does not exist, a new set is created before adding the specified members. + + The key of the set. + The values to add to the set. + The flags to use for this operation. + The number of elements that were added to the set, not including all the elements already present into the set. + https://redis.io/commands/sadd + + + + Returns the members of the set resulting from the specified operation against the given sets. + + The operation to perform. + The key of the first set. + The key of the second set. + The flags to use for this operation. + List with members of the resulting set. + https://redis.io/commands/sunion + https://redis.io/commands/sinter + https://redis.io/commands/sdiff + + + + Returns the members of the set resulting from the specified operation against the given sets. + + The operation to perform. + The keys of the sets to operate on. + The flags to use for this operation. + List with members of the resulting set. + https://redis.io/commands/sunion + https://redis.io/commands/sinter + https://redis.io/commands/sdiff + + + + This command is equal to SetCombine, but instead of returning the resulting set, it is stored in destination. If destination already exists, it is overwritten. + + The operation to perform. + The key of the destination set. + The key of the first set. + The key of the second set. + The flags to use for this operation. + The number of elements in the resulting set. + https://redis.io/commands/sunionstore + https://redis.io/commands/sinterstore + https://redis.io/commands/sdiffstore + + + + This command is equal to SetCombine, but instead of returning the resulting set, it is stored in destination. If destination already exists, it is overwritten. + + The operation to perform. + The key of the destination set. + The keys of the sets to operate on. + The flags to use for this operation. + The number of elements in the resulting set. + https://redis.io/commands/sunionstore + https://redis.io/commands/sinterstore + https://redis.io/commands/sdiffstore + + + + Returns if member is a member of the set stored at key. + + The key of the set. + The value to check for . + The flags to use for this operation. + 1 if the element is a member of the set. 0 if the element is not a member of the set, or if key does not exist. + https://redis.io/commands/sismember + + + + Returns the set cardinality (number of elements) of the set stored at key. + + The key of the set. + The flags to use for this operation. + The cardinality (number of elements) of the set, or 0 if key does not exist. + https://redis.io/commands/scard + + + + Returns all the members of the set value stored at key. + + The key of the set. + The flags to use for this operation. + All elements of the set. + https://redis.io/commands/smembers + + + + Move member from the set at source to the set at destination. This operation is atomic. In every given moment the element will appear to be a member of source or destination for other clients. + When the specified element already exists in the destination set, it is only removed from the source set. + + The key of the source set. + The key of the destination set. + The value to move. + The flags to use for this operation. + 1 if the element is moved. 0 if the element is not a member of source and no operation was performed. + https://redis.io/commands/smove + + + + Removes and returns a random element from the set value stored at key. + + The key of the set. + The flags to use for this operation. + The removed element, or nil when key does not exist. + https://redis.io/commands/spop + + + + Removes and returns the specified number of random elements from the set value stored at key. + + The key of the set. + The number of elements to return. + The flags to use for this operation. + An array of elements, or an empty array when key does not exist. + https://redis.io/commands/spop + + + + Return a random element from the set value stored at key. + + The key of the set. + The flags to use for this operation. + The randomly selected element, or nil when key does not exist + https://redis.io/commands/srandmember + + + + Return an array of count distinct elements if count is positive. If called with a negative count the behavior changes and the command is allowed to return the same element multiple times. + In this case the number of returned elements is the absolute value of the specified count. + + The key of the set. + The count of members to get. + The flags to use for this operation. + An array of elements, or an empty array when key does not exist + https://redis.io/commands/srandmember + + + + Remove the specified member from the set stored at key. Specified members that are not a member of this set are ignored. + + The key of the set. + The value to remove. + The flags to use for this operation. + True if the specified member was already present in the set, else False + https://redis.io/commands/srem + + + + Remove the specified members from the set stored at key. Specified members that are not a member of this set are ignored. + + The key of the set. + The values to remove. + The flags to use for this operation. + The number of members that were removed from the set, not including non existing members. + https://redis.io/commands/srem + + + + The SSCAN command is used to incrementally iterate over set + + The key of the set. + The pattern to match. + The page size to iterate by. + The flags to use for this operation. + Yields all matching elements of the set. + https://redis.io/commands/sscan + + + + The SSCAN command is used to incrementally iterate over set; note: to resume an iteration via cursor, cast the original enumerable or enumerator to IScanningCursor. + + The key of the set. + The pattern to match. + The page size to iterate by. + The cursor position to start at. + The page offset to start at. + The flags to use for this operation. + Yields all matching elements of the set. + https://redis.io/commands/sscan + + + + Sorts a list, set or sorted set (numerically or alphabetically, ascending by default); By default, the elements themselves are compared, but the values can also be + used to perform external key-lookups using the by parameter. By default, the elements themselves are returned, but external key-lookups (one or many) can + be performed instead by specifying the get parameter (note that # specifies the element itself, when used in get). + Referring to the redis SORT documentation for examples is recommended. When used in hashes, by and get + can be used to specify fields using -> notation (again, refer to redis documentation). + + The key of the list, set, or sorted set. + How many entries to skip on the return. + How many entries to take on the return. + The ascending or descending order (defaults to ascending). + The sorting method (defaults to numeric). + The key pattern to sort by, if any. e.g. ExternalKey_* would sort by ExternalKey_{listvalue} as a lookup. + The key pattern to sort by, if any e.g. ExternalKey_* would return the value of ExternalKey_{listvalue} for each entry. + The flags to use for this operation. + The sorted elements, or the external values if get is specified. + https://redis.io/commands/sort + + + + Sorts a list, set or sorted set (numerically or alphabetically, ascending by default); By default, the elements themselves are compared, but the values can also be + used to perform external key-lookups using the by parameter. By default, the elements themselves are returned, but external key-lookups (one or many) can + be performed instead by specifying the get parameter (note that # specifies the element itself, when used in get). + Referring to the redis SORT documentation for examples is recommended. When used in hashes, by and get + can be used to specify fields using -> notation (again, refer to redis documentation). + + The destination key to store results in. + The key of the list, set, or sorted set. + How many entries to skip on the return. + How many entries to take on the return. + The ascending or descending order (defaults to ascending). + The sorting method (defaults to numeric). + The key pattern to sort by, if any. e.g. ExternalKey_* would sort by ExternalKey_{listvalue} as a lookup. + The key pattern to sort by, if any e.g. ExternalKey_* would return the value of ExternalKey_{listvalue} for each entry. + The flags to use for this operation. + The number of elements stored in the new list. + https://redis.io/commands/sort + + + + Adds the specified member with the specified score to the sorted set stored at key. If the specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering. + + The key of the sorted set. + The member to add to the sorted set. + The score for the member to add to the sorted set. + The flags to use for this operation. + True if the value was added, False if it already existed (the score is still updated) + https://redis.io/commands/zadd + + + + Adds the specified member with the specified score to the sorted set stored at key. If the specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering. + + The key of the sorted set. + The member to add to the sorted set. + The score for the member to add to the sorted set. + What conditions to add the element under (defaults to always). + The flags to use for this operation. + True if the value was added, False if it already existed (the score is still updated) + https://redis.io/commands/zadd + + + + Adds all the specified members with the specified scores to the sorted set stored at key. If a specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering. + + The key of the sorted set. + The members and values to add to the sorted set. + The flags to use for this operation. + The number of elements added to the sorted sets, not including elements already existing for which the score was updated. + https://redis.io/commands/zadd + + + + Adds all the specified members with the specified scores to the sorted set stored at key. If a specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering. + + The key of the sorted set. + The members and values to add to the sorted set. + What conditions to add the element under (defaults to always). + The flags to use for this operation. + The number of elements added to the sorted sets, not including elements already existing for which the score was updated. + https://redis.io/commands/zadd + + + + Computes a set operation over two sorted sets, and stores the result in destination, optionally performing + a specific aggregation (defaults to sum). + + The operation to perform. + The key to store the results in. + The key of the first sorted set. + The key of the second sorted set. + The aggregation method (defaults to sum). + The flags to use for this operation. + https://redis.io/commands/zunionstore + https://redis.io/commands/zinterstore + the number of elements in the resulting sorted set at destination + + + + Computes a set operation over multiple sorted sets (optionally using per-set weights), and stores the result in destination, optionally performing + a specific aggregation (defaults to sum). + + The operation to perform. + The key to store the results in. + The keys of the sorted sets. + The optional weights per set that correspond to . + The aggregation method (defaults to sum). + The flags to use for this operation. + https://redis.io/commands/zunionstore + https://redis.io/commands/zinterstore + the number of elements in the resulting sorted set at destination + + + + Decrements the score of member in the sorted set stored at key by decrement. If member does not exist in the sorted set, it is added with -decrement as its score (as if its previous score was 0.0). + + The key of the sorted set. + The member to decrement. + The amount to decrement by. + The flags to use for this operation. + The new score of member. + https://redis.io/commands/zincrby + + + + Increments the score of member in the sorted set stored at key by increment. If member does not exist in the sorted set, it is added with increment as its score (as if its previous score was 0.0). + + The key of the sorted set. + The member to increment. + The amount to increment by. + The flags to use for this operation. + The new score of member. + https://redis.io/commands/zincrby + + + + Returns the sorted set cardinality (number of elements) of the sorted set stored at key. + + The key of the sorted set. + The min score to filter by (defaults to negative infinity). + The max score to filter by (defaults to positive infinity). + Whether to exclude and from the range check (defaults to both inclusive). + The flags to use for this operation. + The cardinality (number of elements) of the sorted set, or 0 if key does not exist. + https://redis.io/commands/zcard + + + + When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command returns the number of elements in the sorted set at key with a value between min and max. + + The key of the sorted set. + The min value to filter by. + The max value to filter by. + Whether to exclude and from the range check (defaults to both inclusive). + The flags to use for this operation. + The number of elements in the specified score range. + https://redis.io/commands/zlexcount + + + + Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score. + Both start and stop are zero-based indexes, where 0 is the first element, 1 is the next element and so on. They can also be negative numbers indicating offsets from the end of the sorted set, with -1 being the last element of the sorted set, -2 the penultimate element and so on. + + The key of the sorted set. + The start index to get. + The stop index to get. + The order to sort by (defaults to ascending). + The flags to use for this operation. + List of elements in the specified range. + https://redis.io/commands/zrange + https://redis.io/commands/zrevrange + + + + Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score. + Both start and stop are zero-based indexes, where 0 is the first element, 1 is the next element and so on. They can also be negative numbers indicating offsets from the end of the sorted set, with -1 being the last element of the sorted set, -2 the penultimate element and so on. + + The key of the sorted set. + The start index to get. + The stop index to get. + The order to sort by (defaults to ascending). + The flags to use for this operation. + List of elements in the specified range. + https://redis.io/commands/zrange + https://redis.io/commands/zrevrange + + + + Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score. + Start and stop are used to specify the min and max range for score values. Similar to other range methods the values are inclusive. + + The key of the sorted set. + The minimum score to filter by. + The maximum score to filter by. + Which of and to exclude (defaults to both inclusive). + The order to sort by (defaults to ascending). + How many items to skip. + How many items to take. + The flags to use for this operation. + List of elements in the specified score range. + https://redis.io/commands/zrangebyscore + https://redis.io/commands/zrevrangebyscore + + + + Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score. + Start and stop are used to specify the min and max range for score values. Similar to other range methods the values are inclusive. + + The key of the sorted set. + The minimum score to filter by. + The maximum score to filter by. + Which of and to exclude (defaults to both inclusive). + The order to sort by (defaults to ascending). + How many items to skip. + How many items to take. + The flags to use for this operation. + List of elements in the specified score range. + https://redis.io/commands/zrangebyscore + https://redis.io/commands/zrevrangebyscore + + + + When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command returns all the elements in the sorted set at key with a value between min and max. + + The key of the sorted set. + The min value to filter by. + The max value to filter by. + Which of and to exclude (defaults to both inclusive). + How many items to skip. + How many items to take. + The flags to use for this operation. + https://redis.io/commands/zrangebylex + list of elements in the specified score range. + + + + When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command returns all the elements in the sorted set at key with a value between min and max. + + The key of the sorted set. + The min value to filter by. + The max value to filter by. + Which of and to exclude (defaults to both inclusive). + Whether to order the data ascending or descending + How many items to skip. + How many items to take. + The flags to use for this operation. + https://redis.io/commands/zrangebylex + https://redis.io/commands/zrevrangebylex + list of elements in the specified score range. + + + + Returns the rank of member in the sorted set stored at key, by default with the scores ordered from low to high. The rank (or index) is 0-based, which means that the member with the lowest score has rank 0. + + The key of the sorted set. + The member to get the rank of. + The order to sort by (defaults to ascending). + The flags to use for this operation. + If member exists in the sorted set, the rank of member; If member does not exist in the sorted set or key does not exist, null + https://redis.io/commands/zrank + https://redis.io/commands/zrevrank + + + + Removes the specified member from the sorted set stored at key. Non existing members are ignored. + + The key of the sorted set. + The member to remove. + The flags to use for this operation. + True if the member existed in the sorted set and was removed; False otherwise. + https://redis.io/commands/zrem + + + + Removes the specified members from the sorted set stored at key. Non existing members are ignored. + + The key of the sorted set. + The members to remove. + The flags to use for this operation. + The number of members removed from the sorted set, not including non existing members. + https://redis.io/commands/zrem + + + + Removes all elements in the sorted set stored at key with rank between start and stop. Both start and stop are 0 -based indexes with 0 being the element with the lowest score. These indexes can be negative numbers, where they indicate offsets starting at the element with the highest score. For example: -1 is the element with the highest score, -2 the element with the second highest score and so forth. + + The key of the sorted set. + The minimum rank to remove. + The maximum rank to remove. + The flags to use for this operation. + The number of elements removed. + https://redis.io/commands/zremrangebyrank + + + + Removes all elements in the sorted set stored at key with a score between min and max (inclusive by default). + + The key of the sorted set. + The minimum score to remove. + The maximum score to remove. + Which of and to exclude (defaults to both inclusive). + The flags to use for this operation. + The number of elements removed. + https://redis.io/commands/zremrangebyscore + + + + When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command removes all elements in the sorted set stored at key between the lexicographical range specified by min and max. + + The key of the sorted set. + The minimum value to remove. + The maximum value to remove. + Which of and to exclude (defaults to both inclusive). + The flags to use for this operation. + the number of elements removed. + https://redis.io/commands/zremrangebylex + + + + The ZSCAN command is used to incrementally iterate over a sorted set + + The key of the sorted set. + The pattern to match. + The page size to iterate by. + The flags to use for this operation. + Yields all matching elements of the sorted set. + https://redis.io/commands/zscan + + + + The ZSCAN command is used to incrementally iterate over a sorted set; note: to resume an iteration via cursor, cast the original enumerable or enumerator to IScanningCursor. + + The key of the sorted set. + The pattern to match. + The page size to iterate by. + The cursor position to start at. + The page offset to start at. + The flags to use for this operation. + Yields all matching elements of the sorted set. + https://redis.io/commands/zscan + + + + Returns the score of member in the sorted set at key; If member does not exist in the sorted set, or key does not exist, nil is returned. + + The key of the sorted set. + The member to get a score for. + The flags to use for this operation. + The score of the member. + https://redis.io/commands/zscore + + + + Removes and returns the first element from the sorted set stored at key, by default with the scores ordered from low to high. + + The key of the sorted set. + The order to sort by (defaults to ascending). + The flags to use for this operation. + The removed element, or nil when key does not exist. + https://redis.io/commands/zpopmin + https://redis.io/commands/zpopmax + + + + Removes and returns the specified number of first elements from the sorted set stored at key, by default with the scores ordered from low to high. + + The key of the sorted set. + The number of elements to return. + The order to sort by (defaults to ascending). + The flags to use for this operation. + An array of elements, or an empty array when key does not exist. + https://redis.io/commands/zpopmin + https://redis.io/commands/zpopmax + + + + Allow the consumer to mark a pending message as correctly processed. Returns the number of messages acknowledged. + + The key of the stream. + The name of the consumer group that received the message. + The ID of the message to acknowledge. + The flags to use for this operation. + The number of messages acknowledged. + https://redis.io/topics/streams-intro + + + + Allow the consumer to mark a pending message as correctly processed. Returns the number of messages acknowledged. + + The key of the stream. + The name of the consumer group that received the message. + The IDs of the messages to acknowledge. + The flags to use for this operation. + The number of messages acknowledged. + https://redis.io/topics/streams-intro + + + + Adds an entry using the specified values to the given stream key. If key does not exist, a new key holding a stream is created. The command returns the ID of the newly created stream entry. + + The key of the stream. + The field name for the stream entry. + The value to set in the stream entry. + The ID to assign to the stream entry, defaults to an auto-generated ID ("*"). + The maximum length of the stream. + If true, the "~" argument is used to allow the stream to exceed max length by a small number. This improves performance when removing messages. + The flags to use for this operation. + The ID of the newly created message. + https://redis.io/commands/xadd + + + + Adds an entry using the specified values to the given stream key. If key does not exist, a new key holding a stream is created. The command returns the ID of the newly created stream entry. + + The key of the stream. + The fields and their associated values to set in the stream entry. + The ID to assign to the stream entry, defaults to an auto-generated ID ("*"). + The maximum length of the stream. + If true, the "~" argument is used to allow the stream to exceed max length by a small number. This improves performance when removing messages. + The flags to use for this operation. + The ID of the newly created message. + https://redis.io/commands/xadd + + + + Change ownership of messages consumed, but not yet acknowledged, by a different consumer. This method returns the complete message for the claimed message(s). + + The key of the stream. + The consumer group. + The consumer claiming the given message(s). + The minimum message idle time to allow the reassignment of the message(s). + The IDs of the messages to claim for the given consumer. + The flags to use for this operation. + The messages successfully claimed by the given consumer. + https://redis.io/topics/streams-intro + + + + Change ownership of messages consumed, but not yet acknowledged, by a different consumer. This method returns the IDs for the claimed message(s). + + The key of the stream. + The consumer group. + The consumer claiming the given message(s). + The minimum message idle time to allow the reassignment of the message(s). + The IDs of the messages to claim for the given consumer. + The flags to use for this operation. + The message IDs for the messages successfully claimed by the given consumer. + https://redis.io/topics/streams-intro + + + + Set the position from which to read a stream for a consumer group. + + The key of the stream. + The name of the consumer group. + The position from which to read for the consumer group. + The flags to use for this operation. + True if successful, otherwise false. + + + + Retrieve information about the consumers for the given consumer group. This is the equivalent of calling "XINFO GROUPS key group". + + The key of the stream. + The consumer group name. + The flags to use for this operation. + An instance of for each of the consumer group's consumers. + https://redis.io/topics/streams-intro + + + + Create a consumer group for the given stream. + + The key of the stream. + The name of the group to create. + The position to begin reading the stream. Defaults to . + The flags to use for this operation. + True if the group was created. + https://redis.io/topics/streams-intro + + + + Create a consumer group for the given stream. + + The key of the stream. + The name of the group to create. + The position to begin reading the stream. Defaults to . + Create the stream if it does not already exist. + The flags to use for this operation. + True if the group was created. + https://redis.io/topics/streams-intro + + + + Delete messages in the stream. This method does not delete the stream. + + The key of the stream. + The IDs of the messages to delete. + The flags to use for this operation. + Returns the number of messages successfully deleted from the stream. + https://redis.io/topics/streams-intro + + + + Delete a consumer from a consumer group. + + The key of the stream. + The name of the consumer group. + The name of the consumer. + The flags to use for this operation. + The number of messages that were pending for the deleted consumer. + + + + Delete a consumer group. + + The key of the stream. + The name of the consumer group. + The flags to use for this operation. + True if deleted, otherwise false. + + + + Retrieve information about the groups created for the given stream. This is the equivalent of calling "XINFO GROUPS key". + + The key of the stream. + The flags to use for this operation. + An instance of for each of the stream's groups. + https://redis.io/topics/streams-intro + + + + Retrieve information about the given stream. This is the equivalent of calling "XINFO STREAM key". + + The key of the stream. + The flags to use for this operation. + A instance with information about the stream. + https://redis.io/topics/streams-intro + + + + Return the number of entries in a stream. + + The key of the stream. + The flags to use for this operation. + The number of entries inside the given stream. + https://redis.io/commands/xlen + + + + View information about pending messages for a stream. + + The key of the stream. + The name of the consumer group + The flags to use for this operation. + An instance of . contains the number of pending messages, the highest and lowest ID of the pending messages, and the consumers with their pending message count. + The equivalent of calling XPENDING key group. + https://redis.io/commands/xpending + + + + View information about each pending message. + + The key of the stream. + The name of the consumer group. + The maximum number of pending messages to return. + The consumer name for the pending messages. Pass RedisValue.Null to include pending messages for all consumers. + The minimum ID from which to read the stream of pending messages. The method will default to reading from the beginning of the stream. + The maximum ID to read to within the stream of pending messages. The method will default to reading to the end of the stream. + The flags to use for this operation. + An instance of for each pending message. + Equivalent of calling XPENDING key group start-id end-id count consumer-name. + https://redis.io/commands/xpending + + + + Read a stream using the given range of IDs. + + The key of the stream. + The minimum ID from which to read the stream. The method will default to reading from the beginning of the stream. + The maximum ID to read to within the stream. The method will default to reading to the end of the stream. + The maximum number of messages to return. + The order of the messages. will execute XRANGE and wil execute XREVRANGE. + The flags to use for this operation. + Returns an instance of for each message returned. + https://redis.io/commands/xrange + + + + Read from a single stream. + + The key of the stream. + The position from which to read the stream. + The maximum number of messages to return. + The flags to use for this operation. + Returns a value of for each message returned. + Equivalent of calling XREAD COUNT num STREAMS key id. + https://redis.io/commands/xread + + + + Read from multiple streams. + + Array of streams and the positions from which to begin reading for each stream. + The maximum number of messages to return from each stream. + The flags to use for this operation. + A value of for each stream. + Equivalent of calling XREAD COUNT num STREAMS key1 key2 id1 id2. + https://redis.io/commands/xread + + + + Read messages from a stream into an associated consumer group. + + The key of the stream. + The name of the consumer group. + The consumer name. + The position from which to read the stream. Defaults to when null. + The maximum number of messages to return. + The flags to use for this operation. + Returns a value of for each message returned. + https://redis.io/commands/xreadgroup + + + + Read messages from a stream into an associated consumer group. + + The key of the stream. + The name of the consumer group. + The consumer name. + The position from which to read the stream. Defaults to when null. + The maximum number of messages to return. + When true, the message will not be added to the pending message list. + The flags to use for this operation. + Returns a value of for each message returned. + https://redis.io/commands/xreadgroup + + + + Read from multiple streams into the given consumer group. The consumer group with the given + will need to have been created for each stream prior to calling this method. + + Array of streams and the positions from which to begin reading for each stream. + The name of the consumer group. + + The maximum number of messages to return from each stream. + The flags to use for this operation. + A value of for each stream. + Equivalent of calling XREADGROUP GROUP groupName consumerName COUNT countPerStream STREAMS stream1 stream2 id1 id2 + https://redis.io/commands/xreadgroup + + + + Read from multiple streams into the given consumer group. The consumer group with the given + will need to have been created for each stream prior to calling this method. + + Array of streams and the positions from which to begin reading for each stream. + The name of the consumer group. + + The maximum number of messages to return from each stream. + When true, the message will not be added to the pending message list. + The flags to use for this operation. + A value of for each stream. + Equivalent of calling XREADGROUP GROUP groupName consumerName COUNT countPerStream STREAMS stream1 stream2 id1 id2 + https://redis.io/commands/xreadgroup + + + + Trim the stream to a specified maximum length. + + The key of the stream. + The maximum length of the stream. + If true, the "~" argument is used to allow the stream to exceed max length by a small number. This improves performance when removing messages. + The flags to use for this operation. + The number of messages removed from the stream. + https://redis.io/topics/streams-intro + + + + If key already exists and is a string, this command appends the value at the end of the string. If key does not exist it is created and set as an empty string, + so APPEND will be similar to SET in this special case. + + The key of the string. + The value to append to the string. + The flags to use for this operation. + The length of the string after the append operation. + https://redis.io/commands/append + + + + Count the number of set bits (population counting) in a string. + By default all the bytes contained in the string are examined. It is possible to specify the counting operation only in an interval passing the additional arguments start and end. + Like for the GETRANGE command start and end can contain negative values in order to index bytes starting from the end of the string, where -1 is the last byte, -2 is the penultimate, and so forth. + + The key of the string. + The start byte to count at. + The end byte to count at. + The flags to use for this operation. + The number of bits set to 1. + https://redis.io/commands/bitcount + + + + Perform a bitwise operation between multiple keys (containing string values) and store the result in the destination key. + The BITOP command supports four bitwise operations; note that NOT is a unary operator: the second key should be omitted in this case + and only the first key will be considered. + The result of the operation is always stored at destkey. + + The operation to perform. + The destination key to store the result in. + The first key to get the bit value from. + The second key to get the bit value from. + The flags to use for this operation. + The size of the string stored in the destination key, that is equal to the size of the longest input string. + https://redis.io/commands/bitop + + + + Perform a bitwise operation between multiple keys (containing string values) and store the result in the destination key. + The BITOP command supports four bitwise operations; note that NOT is a unary operator. + The result of the operation is always stored at destkey. + + The operation to perform. + The destination key to store the result in. + The keys to get the bit values from. + The flags to use for this operation. + The size of the string stored in the destination key, that is equal to the size of the longest input string. + https://redis.io/commands/bitop + + + + Return the position of the first bit set to 1 or 0 in a string. + The position is returned thinking at the string as an array of bits from left to right where the first byte most significant bit is at position 0, the second byte most significant bit is at position 8 and so forth. + An start and end may be specified; these are in bytes, not bits; start and end can contain negative values in order to index bytes starting from the end of the string, where -1 is the last byte, -2 is the penultimate, and so forth. + + The key of the string. + True to check for the first 1 bit, false to check for the first 0 bit. + The position to start looking (defaults to 0). + The position to stop looking (defaults to -1, unlimited). + The flags to use for this operation. + The command returns the position of the first bit set to 1 or 0 according to the request. + If we look for set bits(the bit argument is 1) and the string is empty or composed of just zero bytes, -1 is returned. + https://redis.io/commands/bitpos + + + + Decrements the number stored at key by decrement. If the key does not exist, it is set to 0 before performing the operation. + An error is returned if the key contains a value of the wrong type or contains a string that is not representable as integer. This operation is limited to 64 bit signed integers. + + The key of the string. + The amount to decrement by (defaults to 1). + The flags to use for this operation. + The value of key after the decrement. + https://redis.io/commands/decrby + https://redis.io/commands/decr + + + + Decrements the string representing a floating point number stored at key by the specified decrement. If the key does not exist, it is set to 0 before performing the operation. The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation. + + The key of the string. + The amount to decrement by (defaults to 1). + The flags to use for this operation. + The value of key after the decrement. + https://redis.io/commands/incrbyfloat + + + + Get the value of key. If the key does not exist the special value nil is returned. An error is returned if the value stored at key is not a string, because GET only handles string values. + + The key of the string. + The flags to use for this operation. + The value of key, or nil when key does not exist. + https://redis.io/commands/get + + + + Returns the values of all specified keys. For every key that does not hold a string value or does not exist, the special value nil is returned. + + The keys of the strings. + The flags to use for this operation. + The values of the strings with nil for keys do not exist. + https://redis.io/commands/mget + + + + Get the value of key. If the key does not exist the special value nil is returned. An error is returned if the value stored at key is not a string, because GET only handles string values. + + The key of the string. + The flags to use for this operation. + The value of key, or nil when key does not exist. + https://redis.io/commands/get + + + + Returns the bit value at offset in the string value stored at key. + When offset is beyond the string length, the string is assumed to be a contiguous space with 0 bits. + + The key of the string. + The offset in the string to get a bit at. + The flags to use for this operation. + The bit value stored at offset. + https://redis.io/commands/getbit + + + + Returns the substring of the string value stored at key, determined by the offsets start and end (both are inclusive). Negative offsets can be used in order to provide an offset starting from the end of the string. So -1 means the last character, -2 the penultimate and so forth. + + The key of the string. + The start index of the substring to get. + The end index of the substring to get. + The flags to use for this operation. + The substring of the string value stored at key. + https://redis.io/commands/getrange + + + + Atomically sets key to value and returns the old value stored at key. + + The key of the string. + The value to replace the existing value with. + The flags to use for this operation. + The old value stored at key, or nil when key did not exist. + https://redis.io/commands/getset + + + + Get the value of key and delete the key. If the key does not exist the special value nil is returned. An error is returned if the value stored at key is not a string, because GET only handles string values. + + The key of the string. + The flags to use for this operation. + The value of key, or nil when key does not exist. + https://redis.io/commands/getdelete + + + + Get the value of key. If the key does not exist the special value nil is returned. An error is returned if the value stored at key is not a string, because GET only handles string values. + + The key of the string. + The flags to use for this operation. + The value of key and its expiry, or nil when key does not exist. + https://redis.io/commands/get + + + + Increments the number stored at key by increment. If the key does not exist, it is set to 0 before performing the operation. An error is returned if the key contains a value of the wrong type or contains a string that is not representable as integer. This operation is limited to 64 bit signed integers. + + The key of the string. + The amount to increment by (defaults to 1). + The flags to use for this operation. + The value of key after the increment. + https://redis.io/commands/incrby + https://redis.io/commands/incr + + + + Increments the string representing a floating point number stored at key by the specified increment. If the key does not exist, it is set to 0 before performing the operation. The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation. + + The key of the string. + The amount to increment by (defaults to 1). + The flags to use for this operation. + The value of key after the increment. + https://redis.io/commands/incrbyfloat + + + + Returns the length of the string value stored at key. + + The key of the string. + The flags to use for this operation. + the length of the string at key, or 0 when key does not exist. + https://redis.io/commands/strlen + + + + Set key to hold the string value. If key already holds a value, it is overwritten, regardless of its type. + + The key of the string. + The value to set. + The expiry to set. + Which condition to set the value under (defaults to always). + The flags to use for this operation. + True if the string was set, false otherwise. + https://redis.io/commands/set + + + + Sets the given keys to their respective values. If "not exists" is specified, this will not perform any operation at all even if just a single key already exists. + + The keys and values to set. + Which condition to set the value under (defaults to always). + The flags to use for this operation. + True if the keys were set, else False + https://redis.io/commands/mset + https://redis.io/commands/msetnx + + + + Sets or clears the bit at offset in the string value stored at key. + The bit is either set or cleared depending on value, which can be either 0 or 1. When key does not exist, a new string value is created.The string is grown to make sure it can hold a bit at offset. + + The key of the string. + The offset in the string to set . + The bit value to set, true for 1, false for 0. + The flags to use for this operation. + The original bit value stored at offset. + https://redis.io/commands/setbit + + + + Overwrites part of the string stored at key, starting at the specified offset, for the entire length of value. If the offset is larger than the current length of the string at key, the string is padded with zero-bytes to make offset fit. Non-existing keys are considered as empty strings, so this command will make sure it holds a string large enough to be able to set value at offset. + + The key of the string. + The offset in the string to overwrite. + The value to overwrite with. + The flags to use for this operation. + The length of the string after it was modified by the command. + https://redis.io/commands/setrange + + + + Alters the last access time of a key. + + The key to touch. + The flags to use for this operation. + True if the key was touched. + https://redis.io/commands/touch + + + + Alters the last access time of a keys. A key is ignored if it does not exist. + + The keys to touch. + The flags to use for this operation. + The number of keys that were touched. + https://redis.io/commands/touch + + + + Describes functionality that is common to both standalone redis servers and redis clusters + + + + + Indicates whether the instance can communicate with the server (resolved + using the supplied key and optional flags) + + The key to check for. + The flags to use for this operation. + + + + Atomically transfer a key from a source Redis instance to a destination Redis instance. On success the key is deleted from the original instance by default, and is guaranteed to exist in the target instance. + + The key to migrate. + The server to migrate the key to. + The database to migrate the key to. + The timeout to use for the transfer. + The options to use for this migration. + The flags to use for this operation. + https://redis.io/commands/MIGRATE + + + + Returns the raw DEBUG OBJECT output for a key; this command is not fully documented and should be avoided unless you have good reason, and then avoided anyway. + + The key to debug. + The flags to use for this migration. + The raw output from DEBUG OBJECT. + https://redis.io/commands/debug-object + + + + Add the specified member to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members. + + The key of the set. + The longitude of geo entry. + The latitude of the geo entry. + The value to set at this entry. + The flags to use for this operation. + True if the specified member was not already present in the set, else False. + https://redis.io/commands/geoadd + + + + Add the specified member to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members. + + The key of the set. + The geo value to store. + The flags to use for this operation. + True if the specified member was not already present in the set, else False + https://redis.io/commands/geoadd + + + + Add the specified members to the set stored at key. Specified members that are already a member of this set are ignored. If key does not exist, a new set is created before adding the specified members. + + The key of the set. + The geo values add to the set. + The flags to use for this operation. + The number of elements that were added to the set, not including all the elements already present into the set. + https://redis.io/commands/geoadd + + + + Removes the specified member from the geo sorted set stored at key. Non existing members are ignored. + + The key of the set. + The geo value to remove. + The flags to use for this operation. + True if the member existed in the sorted set and was removed; False otherwise. + https://redis.io/commands/zrem + + + + Return the distance between two members in the geospatial index represented by the sorted set. + + The key of the set. + The first member to check. + The second member to check. + The unit of distance to return (defaults to meters). + The flags to use for this operation. + The command returns the distance as a double (represented as a string) in the specified unit, or NULL if one or both the elements are missing. + https://redis.io/commands/geodist + + + + Return valid Geohash strings representing the position of one or more elements in a sorted set value representing a geospatial index (where elements were added using GEOADD). + + The key of the set. + The members to get. + The flags to use for this operation. + The command returns an array where each element is the Geohash corresponding to each member name passed as argument to the command. + https://redis.io/commands/geohash + + + + Return valid Geohash strings representing the position of one or more elements in a sorted set value representing a geospatial index (where elements were added using GEOADD). + + The key of the set. + The member to get. + The flags to use for this operation. + The command returns an array where each element is the Geohash corresponding to each member name passed as argument to the command. + https://redis.io/commands/geohash + + + + Return the positions (longitude,latitude) of all the specified members of the geospatial index represented by the sorted set at key. + + The key of the set. + The members to get. + The flags to use for this operation. + The command returns an array where each element is a two elements array representing longitude and latitude (x,y) of each member name passed as argument to the command.Non existing elements are reported as NULL elements of the array. + https://redis.io/commands/geopos + + + + Return the positions (longitude,latitude) of all the specified members of the geospatial index represented by the sorted set at key. + + The key of the set. + The member to get. + The flags to use for this operation. + The command returns an array where each element is a two elements array representing longitude and latitude (x,y) of each member name passed as argument to the command.Non existing elements are reported as NULL elements of the array. + https://redis.io/commands/geopos + + + + Return the members of a sorted set populated with geospatial information using GEOADD, which are within the borders of the area specified with the center location and the maximum distance from the center (the radius). + + The key of the set. + The member to get a radius of results from. + The radius to check. + The unit of (defaults to meters). + The count of results to get, -1 for unlimited. + The order of the results. + The search options to use. + The flags to use for this operation. + The results found within the radius, if any. + https://redis.io/commands/georadius + + + + Return the members of a sorted set populated with geospatial information using GEOADD, which are within the borders of the area specified with the center location and the maximum distance from the center (the radius). + + The key of the set. + The longitude of the point to get a radius of results from. + The latitude of the point to get a radius of results from. + The radius to check. + The unit of (defaults to meters). + The count of results to get, -1 for unlimited. + The order of the results. + The search options to use. + The flags to use for this operation. + The results found within the radius, if any. + https://redis.io/commands/georadius + + + + Decrements the number stored at field in the hash stored at key by decrement. If key does not exist, a new key holding a hash is created. If field does not exist the value is set to 0 before the operation is performed. + + The key of the hash. + The field in the hash to decrement. + The amount to decrement by. + The flags to use for this operation. + The value at field after the decrement operation. + The range of values supported by HINCRBY is limited to 64 bit signed integers. + https://redis.io/commands/hincrby + + + + Decrement the specified field of an hash stored at key, and representing a floating point number, by the specified decrement. If the field does not exist, it is set to 0 before performing the operation. + + The key of the hash. + The field in the hash to decrement. + The amount to decrement by. + The flags to use for this operation. + The value at field after the decrement operation. + The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation. + https://redis.io/commands/hincrbyfloat + + + + Removes the specified fields from the hash stored at key. Non-existing fields are ignored. Non-existing keys are treated as empty hashes and this command returns 0. + + The key of the hash. + The field in the hash to delete. + The flags to use for this operation. + The number of fields that were removed. + https://redis.io/commands/hdel + + + + Removes the specified fields from the hash stored at key. Non-existing fields are ignored. Non-existing keys are treated as empty hashes and this command returns 0. + + The key of the hash. + The fields in the hash to delete. + The flags to use for this operation. + The number of fields that were removed. + https://redis.io/commands/hdel + + + + Returns if field is an existing field in the hash stored at key. + + The key of the hash. + The field in the hash to check. + The flags to use for this operation. + 1 if the hash contains field. 0 if the hash does not contain field, or key does not exist. + https://redis.io/commands/hexists + + + + Returns the value associated with field in the hash stored at key. + + The key of the hash. + The field in the hash to get. + The flags to use for this operation. + The value associated with field, or nil when field is not present in the hash or key does not exist. + https://redis.io/commands/hget + + + + Returns the value associated with field in the hash stored at key. + + The key of the hash. + The field in the hash to get. + The flags to use for this operation. + The value associated with field, or nil when field is not present in the hash or key does not exist. + https://redis.io/commands/hget + + + + Returns the values associated with the specified fields in the hash stored at key. + For every field that does not exist in the hash, a nil value is returned.Because a non-existing keys are treated as empty hashes, running HMGET against a non-existing key will return a list of nil values. + + The key of the hash. + The fields in the hash to get. + The flags to use for this operation. + List of values associated with the given fields, in the same order as they are requested. + https://redis.io/commands/hmget + + + + Returns all fields and values of the hash stored at key. + + The key of the hash to get all entries from. + The flags to use for this operation. + List of fields and their values stored in the hash, or an empty list when key does not exist. + https://redis.io/commands/hgetall + + + + Increments the number stored at field in the hash stored at key by increment. If key does not exist, a new key holding a hash is created. If field does not exist the value is set to 0 before the operation is performed. + + The key of the hash. + The field in the hash to increment. + The amount to increment by. + The flags to use for this operation. + The value at field after the increment operation. + The range of values supported by HINCRBY is limited to 64 bit signed integers. + https://redis.io/commands/hincrby + + + + Increment the specified field of an hash stored at key, and representing a floating point number, by the specified increment. If the field does not exist, it is set to 0 before performing the operation. + + The key of the hash. + The field in the hash to increment. + The amount to increment by. + The flags to use for this operation. + The value at field after the increment operation. + The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation. + https://redis.io/commands/hincrbyfloat + + + + Returns all field names in the hash stored at key. + + The key of the hash. + The flags to use for this operation. + List of fields in the hash, or an empty list when key does not exist. + https://redis.io/commands/hkeys + + + + Returns the number of fields contained in the hash stored at key. + + The key of the hash. + The flags to use for this operation. + The number of fields in the hash, or 0 when key does not exist. + https://redis.io/commands/hlen + + + + The HSCAN command is used to incrementally iterate over a hash; note: to resume an iteration via cursor, cast the original enumerable or enumerator to IScanningCursor. + + The key of the hash. + The pattern of keys to get entries for. + The page size to iterate by. + The cursor position to start at. + The page offset to start at. + The flags to use for this operation. + Yields all elements of the hash matching the pattern. + https://redis.io/commands/hscan + + + + Sets the specified fields to their respective values in the hash stored at key. This command overwrites any specified fields that already exist in the hash, leaving other unspecified fields untouched. If key does not exist, a new key holding a hash is created. + + The key of the hash. + The entries to set in the hash. + The flags to use for this operation. + https://redis.io/commands/hmset + + + + Sets field in the hash stored at key to value. If key does not exist, a new key holding a hash is created. If field already exists in the hash, it is overwritten. + + The key of the hash. + The field to set in the hash. + The value to set. + Which conditions under which to set the field value (defaults to always). + The flags to use for this operation. + 1 if field is a new field in the hash and value was set. 0 if field already exists in the hash and the value was updated. + https://redis.io/commands/hset + https://redis.io/commands/hsetnx + + + + Returns the string length of the value associated with field in the hash stored at key. + + The key of the hash. + The field containing the string + The flags to use for this operation. + the length of the string at field, or 0 when key does not exist. + https://redis.io/commands/hstrlen + + + + Returns all values in the hash stored at key. + + The key of the hash. + The flags to use for this operation. + List of values in the hash, or an empty list when key does not exist. + https://redis.io/commands/hvals + + + + Adds the element to the HyperLogLog data structure stored at the variable name specified as first argument. + + The key of the hyperloglog. + The value to add. + The flags to use for this operation. + True if at least 1 HyperLogLog internal register was altered, false otherwise. + https://redis.io/commands/pfadd + + + + Adds all the element arguments to the HyperLogLog data structure stored at the variable name specified as first argument. + + The key of the hyperloglog. + The values to add. + The flags to use for this operation. + True if at least 1 HyperLogLog internal register was altered, false otherwise. + https://redis.io/commands/pfadd + + + + Returns the approximated cardinality computed by the HyperLogLog data structure stored at the specified variable, or 0 if the variable does not exist. + + The key of the hyperloglog. + The flags to use for this operation. + The approximated number of unique elements observed via HyperLogLogAdd. + https://redis.io/commands/pfcount + + + + Returns the approximated cardinality of the union of the HyperLogLogs passed, by internally merging the HyperLogLogs stored at the provided keys into a temporary hyperLogLog, or 0 if the variable does not exist. + + The keys of the hyperloglogs. + The flags to use for this operation. + The approximated number of unique elements observed via HyperLogLogAdd. + https://redis.io/commands/pfcount + + + + Merge multiple HyperLogLog values into an unique value that will approximate the cardinality of the union of the observed Sets of the source HyperLogLog structures. + + The key of the merged hyperloglog. + The key of the first hyperloglog to merge. + The key of the first hyperloglog to merge. + The flags to use for this operation. + https://redis.io/commands/pfmerge + + + + Merge multiple HyperLogLog values into an unique value that will approximate the cardinality of the union of the observed Sets of the source HyperLogLog structures. + + The key of the merged hyperloglog. + The keys of the hyperloglogs to merge. + The flags to use for this operation. + https://redis.io/commands/pfmerge + + + + Indicate exactly which redis server we are talking to. + + The key to check. + The flags to use for this operation. + The endpoint serving the key. + + + + Removes the specified key. A key is ignored if it does not exist. + If UNLINK is available (Redis 4.0+), it will be used. + + The key to delete. + The flags to use for this operation. + True if the key was removed. + https://redis.io/commands/del + https://redis.io/commands/unlink + + + + Removes the specified keys. A key is ignored if it does not exist. + If UNLINK is available (Redis 4.0+), it will be used. + + The keys to delete. + The flags to use for this operation. + The number of keys that were removed. + https://redis.io/commands/del + https://redis.io/commands/unlink + + + + Serialize the value stored at key in a Redis-specific format and return it to the user. The returned value can be synthesized back into a Redis key using the RESTORE command. + + The key to dump. + The flags to use for this operation. + the serialized value. + https://redis.io/commands/dump + + + + Returns if key exists. + + The key to check. + The flags to use for this operation. + 1 if the key exists. 0 if the key does not exist. + https://redis.io/commands/exists + + + + Indicates how many of the supplied keys exists. + + The keys to check. + The flags to use for this operation. + The number of keys that existed. + https://redis.io/commands/exists + + + + Set a timeout on key. After the timeout has expired, the key will automatically be deleted. A key with an associated timeout is said to be volatile in Redis terminology. + + The key to set the expiration for. + The timeout to set. + The flags to use for this operation. + 1 if the timeout was set. 0 if key does not exist or the timeout could not be set. + If key is updated before the timeout has expired, then the timeout is removed as if the PERSIST command was invoked on key. + For Redis versions < 2.1.3, existing timeouts cannot be overwritten. So, if key already has an associated timeout, it will do nothing and return 0. Since Redis 2.1.3, you can update the timeout of a key. It is also possible to remove the timeout using the PERSIST command. See the page on key expiry for more information. + https://redis.io/commands/expire + https://redis.io/commands/pexpire + https://redis.io/commands/persist + + + + Set a timeout on key. After the timeout has expired, the key will automatically be deleted. A key with an associated timeout is said to be volatile in Redis terminology. + + The key to set the expiration for. + The exact date to expiry to set. + The flags to use for this operation. + 1 if the timeout was set. 0 if key does not exist or the timeout could not be set. + If key is updated before the timeout has expired, then the timeout is removed as if the PERSIST command was invoked on key. + For Redis versions < 2.1.3, existing timeouts cannot be overwritten. So, if key already has an associated timeout, it will do nothing and return 0. Since Redis 2.1.3, you can update the timeout of a key. It is also possible to remove the timeout using the PERSIST command. See the page on key expiry for more information. + https://redis.io/commands/expireat + https://redis.io/commands/pexpireat + https://redis.io/commands/persist + + + + Returns the time since the object stored at the specified key is idle (not requested by read or write operations) + + The key to get the time of. + The flags to use for this operation. + The time since the object stored at the specified key is idle + https://redis.io/commands/object + + + + Move key from the currently selected database (see SELECT) to the specified destination database. When key already exists in the destination database, or it does not exist in the source database, it does nothing. It is possible to use MOVE as a locking primitive because of this. + + The key to move. + The database to move the key to. + The flags to use for this operation. + 1 if key was moved; 0 if key was not moved. + https://redis.io/commands/move + + + + Remove the existing timeout on key, turning the key from volatile (a key with an expire set) to persistent (a key that will never expire as no timeout is associated). + + The key to persist. + The flags to use for this operation. + 1 if the timeout was removed. 0 if key does not exist or does not have an associated timeout. + https://redis.io/commands/persist + + + + Return a random key from the currently selected database. + + The flags to use for this operation. + The random key, or nil when the database is empty. + https://redis.io/commands/randomkey + + + + Renames key to newkey. It returns an error when the source and destination names are the same, or when key does not exist. + + The key to rename. + The key to rename to. + What conditions to rename under (defaults to always). + The flags to use for this operation. + True if the key was renamed, false otherwise. + https://redis.io/commands/rename + https://redis.io/commands/renamenx + + + + Create a key associated with a value that is obtained by deserializing the provided serialized value (obtained via DUMP). + If ttl is 0 the key is created without any expire, otherwise the specified expire time(in milliseconds) is set. + + The key to restore. + The value of the key. + The expiry to set. + The flags to use for this operation. + https://redis.io/commands/restore + + + + Returns the remaining time to live of a key that has a timeout. This introspection capability allows a Redis client to check how many seconds a given key will continue to be part of the dataset. + + The key to check. + The flags to use for this operation. + TTL, or nil when key does not exist or does not have a timeout. + https://redis.io/commands/ttl + + + + Returns the string representation of the type of the value stored at key. The different types that can be returned are: string, list, set, zset and hash. + + The key to get the type of. + The flags to use for this operation. + Type of key, or none when key does not exist. + https://redis.io/commands/type + + + + Returns the element at index index in the list stored at key. The index is zero-based, so 0 means the first element, 1 the second element and so on. Negative indices can be used to designate elements starting at the tail of the list. Here, -1 means the last element, -2 means the penultimate and so forth. + + The key of the list. + The index position to ge the value at. + The flags to use for this operation. + The requested element, or nil when index is out of range. + https://redis.io/commands/lindex + + + + Inserts value in the list stored at key either before or after the reference value pivot. + When key does not exist, it is considered an empty list and no operation is performed. + + The key of the list. + The value to insert after. + The value to insert. + The flags to use for this operation. + The length of the list after the insert operation, or -1 when the value pivot was not found. + https://redis.io/commands/linsert + + + + Inserts value in the list stored at key either before or after the reference value pivot. + When key does not exist, it is considered an empty list and no operation is performed. + + The key of the list. + The value to insert before. + The value to insert. + The flags to use for this operation. + The length of the list after the insert operation, or -1 when the value pivot was not found. + https://redis.io/commands/linsert + + + + Removes and returns the first element of the list stored at key. + + The key of the list. + The flags to use for this operation. + The value of the first element, or nil when key does not exist. + https://redis.io/commands/lpop + + + + Removes and returns count elements from the head of the list stored at key. + If the list contains less than count elements, removes and returns the number of elements in the list + + The key of the list. + The number of elements to remove + The flags to use for this operation. + Array of values that were popped, or nil if the key doesn't exist + https://redis.io/commands/lpop + + + + Insert the specified value at the head of the list stored at key. If key does not exist, it is created as empty list before performing the push operations. + + The key of the list. + The value to add to the head of the list. + Which conditions to add to the list under (defaults to always). + The flags to use for this operation. + The length of the list after the push operations. + https://redis.io/commands/lpush + https://redis.io/commands/lpushx + + + + Insert the specified value at the head of the list stored at key. If key does not exist, it is created as empty list before performing the push operations. + + The key of the list. + The value to add to the head of the list. + Which conditions to add to the list under (defaults to always). + The flags to use for this operation. + The length of the list after the push operations. + https://redis.io/commands/lpush + https://redis.io/commands/lpushx + + + + Insert all the specified values at the head of the list stored at key. If key does not exist, it is created as empty list before performing the push operations. + Elements are inserted one after the other to the head of the list, from the leftmost element to the rightmost element. So for instance the command LPUSH mylist a b c will result into a list containing c as first element, b as second element and a as third element. + + The key of the list. + The values to add to the head of the list. + The flags to use for this operation. + The length of the list after the push operations. + https://redis.io/commands/lpush + + + + Returns the length of the list stored at key. If key does not exist, it is interpreted as an empty list and 0 is returned. + + The key of the list. + The flags to use for this operation. + The length of the list at key. + https://redis.io/commands/llen + + + + Returns the specified elements of the list stored at key. The offsets start and stop are zero-based indexes, with 0 being the first element of the list (the head of the list), 1 being the next element and so on. + These offsets can also be negative numbers indicating offsets starting at the end of the list.For example, -1 is the last element of the list, -2 the penultimate, and so on. + Note that if you have a list of numbers from 0 to 100, LRANGE list 0 10 will return 11 elements, that is, the rightmost item is included. + + The key of the list. + The start index of the list. + The stop index of the list. + The flags to use for this operation. + List of elements in the specified range. + https://redis.io/commands/lrange + + + + Removes the first count occurrences of elements equal to value from the list stored at key. The count argument influences the operation in the following ways: + count > 0: Remove elements equal to value moving from head to tail. + count < 0: Remove elements equal to value moving from tail to head. + count = 0: Remove all elements equal to value. + + The key of the list. + The value to remove from the list. + The count behavior (see method summary). + The flags to use for this operation. + The number of removed elements. + https://redis.io/commands/lrem + + + + Removes and returns the last element of the list stored at key. + + The key of the list. + The flags to use for this operation. + The element being popped. + https://redis.io/commands/rpop + + + + Removes and returns count elements from the end the list stored at key. + If the list contains less than count elements, removes and returns the number of elements in the list + + The key of the list. + The number of elements to pop + The flags to use for this operation. + Array of values that were popped, or nil if the key doesn't exist + https://redis.io/commands/rpop + + + + Atomically returns and removes the last element (tail) of the list stored at source, and pushes the element at the first element (head) of the list stored at destination. + + The key of the source list. + The key of the destination list. + The flags to use for this operation. + The element being popped and pushed. + https://redis.io/commands/rpoplpush + + + + Insert the specified value at the tail of the list stored at key. If key does not exist, it is created as empty list before performing the push operation. + + The key of the list. + The value to add to the tail of the list. + Which conditions to add to the list under. + The flags to use for this operation. + The length of the list after the push operation. + https://redis.io/commands/rpush + https://redis.io/commands/rpushx + + + + Insert the specified value at the tail of the list stored at key. If key does not exist, it is created as empty list before performing the push operation. + + The key of the list. + The values to add to the tail of the list. + Which conditions to add to the list under. + The flags to use for this operation. + The length of the list after the push operation. + https://redis.io/commands/rpush + https://redis.io/commands/rpushx + + + + Insert all the specified values at the tail of the list stored at key. If key does not exist, it is created as empty list before performing the push operation. + Elements are inserted one after the other to the tail of the list, from the leftmost element to the rightmost element. So for instance the command RPUSH mylist a b c will result into a list containing a as first element, b as second element and c as third element. + + The key of the list. + The values to add to the tail of the list. + The flags to use for this operation. + The length of the list after the push operation. + https://redis.io/commands/rpush + + + + Sets the list element at index to value. For more information on the index argument, see ListGetByIndex. An error is returned for out of range indexes. + + The key of the list. + The index to set the value at. + The values to add to the list. + The flags to use for this operation. + https://redis.io/commands/lset + + + + Trim an existing list so that it will contain only the specified range of elements specified. Both start and stop are zero-based indexes, where 0 is the first element of the list (the head), 1 the next element and so on. + For example: LTRIM foobar 0 2 will modify the list stored at foobar so that only the first three elements of the list will remain. + start and end can also be negative numbers indicating offsets from the end of the list, where -1 is the last element of the list, -2 the penultimate element and so on. + + The key of the list. + The start index of the list to trim to. + The end index of the list to trim to. + The flags to use for this operation. + https://redis.io/commands/ltrim + + + + Extends a lock, if the token value is correct. + + The key of the lock. + The value to set at the key. + The expiration of the lock key. + The flags to use for this operation. + True if the lock was successfully extended. + + + + Queries the token held against a lock. + + The key of the lock. + The flags to use for this operation. + The current value of the lock, if any. + + + + Releases a lock, if the token value is correct. + + The key of the lock. + The value at the key tht must match. + The flags to use for this operation. + True if the lock was successfully released, false otherwise. + + + + Takes a lock (specifying a token value) if it is not already taken. + + The key of the lock. + The value to set at the key. + The expiration of the lock key. + The flags to use for this operation. + True if the lock was successfully taken, false otherwise. + + + + Posts a message to the given channel. + + The channel to publish to. + The message to send. + The flags to use for this operation. + The number of clients that received the message. + https://redis.io/commands/publish + + + + Execute an arbitrary command against the server; this is primarily intended for + executing modules, but may also be used to provide access to new features that lack + a direct API. + + The command to run. + The arguments to pass for the command. + This API should be considered an advanced feature; inappropriate use can be harmful + A dynamic representation of the command's result + + + + Execute an arbitrary command against the server; this is primarily intended for + executing modules, but may also be used to provide access to new features that lack + a direct API. + + The command to run. + The arguments to pass for the command. + The flags to use for this operation. + This API should be considered an advanced feature; inappropriate use can be harmful + A dynamic representation of the command's result + + + + Execute a Lua script against the server. + + The script to execute. + The keys to execute against. + The values to execute against. + The flags to use for this operation. + A dynamic representation of the script's result + https://redis.io/commands/eval + https://redis.io/commands/evalsha + + + + Execute a Lua script against the server using just the SHA1 hash + + The hash of the script to execute. + The keys to execute against. + The values to execute against. + The flags to use for this operation. + A dynamic representation of the script's result + https://redis.io/commands/evalsha + + + + Execute a lua script against the server, using previously prepared script. + Named parameters, if any, are provided by the `parameters` object. + + The script to execute. + The parameters to pass to the script. + The flags to use for this operation. + A dynamic representation of the script's result + https://redis.io/commands/eval + + + + Execute a lua script against the server, using previously prepared and loaded script. + This method sends only the SHA1 hash of the lua script to Redis. + Named parameters, if any, are provided by the `parameters` object. + + The already-loaded script to execute. + The parameters to pass to the script. + The flags to use for this operation. + A dynamic representation of the script's result + https://redis.io/commands/eval + + + + Add the specified member to the set stored at key. + Specified members that are already a member of this set are ignored. + If key does not exist, a new set is created before adding the specified members. + + The key of the set. + The value to add to the set. + The flags to use for this operation. + True if the specified member was not already present in the set, else False + https://redis.io/commands/sadd + + + + Add the specified members to the set stored at key. + Specified members that are already a member of this set are ignored. + If key does not exist, a new set is created before adding the specified members. + + The key of the set. + The values to add to the set. + The flags to use for this operation. + The number of elements that were added to the set, not including all the elements already present into the set. + https://redis.io/commands/sadd + + + + Returns the members of the set resulting from the specified operation against the given sets. + + The operation to perform. + The key of the first set. + The key of the second set. + The flags to use for this operation. + List with members of the resulting set. + https://redis.io/commands/sunion + https://redis.io/commands/sinter + https://redis.io/commands/sdiff + + + + Returns the members of the set resulting from the specified operation against the given sets. + + The operation to perform. + The keys of the sets to operate on. + The flags to use for this operation. + List with members of the resulting set. + https://redis.io/commands/sunion + https://redis.io/commands/sinter + https://redis.io/commands/sdiff + + + + This command is equal to SetCombine, but instead of returning the resulting set, it is stored in destination. If destination already exists, it is overwritten. + + The operation to perform. + The key of the destination set. + The key of the first set. + The key of the second set. + The flags to use for this operation. + The number of elements in the resulting set. + https://redis.io/commands/sunionstore + https://redis.io/commands/sinterstore + https://redis.io/commands/sdiffstore + + + + This command is equal to SetCombine, but instead of returning the resulting set, it is stored in destination. If destination already exists, it is overwritten. + + The operation to perform. + The key of the destination set. + The keys of the sets to operate on. + The flags to use for this operation. + The number of elements in the resulting set. + https://redis.io/commands/sunionstore + https://redis.io/commands/sinterstore + https://redis.io/commands/sdiffstore + + + + Returns if member is a member of the set stored at key. + + The key of the set. + The value to check for . + The flags to use for this operation. + 1 if the element is a member of the set. 0 if the element is not a member of the set, or if key does not exist. + https://redis.io/commands/sismember + + + + Returns the set cardinality (number of elements) of the set stored at key. + + The key of the set. + The flags to use for this operation. + The cardinality (number of elements) of the set, or 0 if key does not exist. + https://redis.io/commands/scard + + + + Returns all the members of the set value stored at key. + + The key of the set. + The flags to use for this operation. + All elements of the set. + https://redis.io/commands/smembers + + + + Move member from the set at source to the set at destination. This operation is atomic. In every given moment the element will appear to be a member of source or destination for other clients. + When the specified element already exists in the destination set, it is only removed from the source set. + + The key of the source set. + The key of the destination set. + The value to move. + The flags to use for this operation. + 1 if the element is moved. 0 if the element is not a member of source and no operation was performed. + https://redis.io/commands/smove + + + + Removes and returns a random element from the set value stored at key. + + The key of the set. + The flags to use for this operation. + The removed element, or nil when key does not exist. + https://redis.io/commands/spop + + + + Removes and returns the specified number of random elements from the set value stored at key. + + The key of the set. + The number of elements to return. + The flags to use for this operation. + An array of elements, or an empty array when key does not exist. + https://redis.io/commands/spop + + + + Return a random element from the set value stored at key. + + The key of the set. + The flags to use for this operation. + The randomly selected element, or nil when key does not exist + https://redis.io/commands/srandmember + + + + Return an array of count distinct elements if count is positive. If called with a negative count the behavior changes and the command is allowed to return the same element multiple times. + In this case the number of returned elements is the absolute value of the specified count. + + The key of the set. + The count of members to get. + The flags to use for this operation. + An array of elements, or an empty array when key does not exist + https://redis.io/commands/srandmember + + + + Remove the specified member from the set stored at key. Specified members that are not a member of this set are ignored. + + The key of the set. + The value to remove. + The flags to use for this operation. + True if the specified member was already present in the set, else False + https://redis.io/commands/srem + + + + Remove the specified members from the set stored at key. Specified members that are not a member of this set are ignored. + + The key of the set. + The values to remove. + The flags to use for this operation. + The number of members that were removed from the set, not including non existing members. + https://redis.io/commands/srem + + + + Sorts a list, set or sorted set (numerically or alphabetically, ascending by default); By default, the elements themselves are compared, but the values can also be + used to perform external key-lookups using the by parameter. By default, the elements themselves are returned, but external key-lookups (one or many) can + be performed instead by specifying the get parameter (note that # specifies the element itself, when used in get). + Referring to the redis SORT documentation for examples is recommended. When used in hashes, by and get + can be used to specify fields using -> notation (again, refer to redis documentation). + + The key of the list, set, or sorted set. + How many entries to skip on the return. + How many entries to take on the return. + The ascending or descending order (defaults to ascending). + The sorting method (defaults to numeric). + The key pattern to sort by, if any. e.g. ExternalKey_* would sort by ExternalKey_{listvalue} as a lookup. + The key pattern to sort by, if any e.g. ExternalKey_* would return the value of ExternalKey_{listvalue} for each entry. + The flags to use for this operation. + The sorted elements, or the external values if get is specified. + https://redis.io/commands/sort + + + + Sorts a list, set or sorted set (numerically or alphabetically, ascending by default); By default, the elements themselves are compared, but the values can also be + used to perform external key-lookups using the by parameter. By default, the elements themselves are returned, but external key-lookups (one or many) can + be performed instead by specifying the get parameter (note that # specifies the element itself, when used in get). + Referring to the redis SORT documentation for examples is recommended. When used in hashes, by and get + can be used to specify fields using -> notation (again, refer to redis documentation). + + The destination key to store results in. + The key of the list, set, or sorted set. + How many entries to skip on the return. + How many entries to take on the return. + The ascending or descending order (defaults to ascending). + The sorting method (defaults to numeric). + The key pattern to sort by, if any. e.g. ExternalKey_* would sort by ExternalKey_{listvalue} as a lookup. + The key pattern to sort by, if any e.g. ExternalKey_* would return the value of ExternalKey_{listvalue} for each entry. + The flags to use for this operation. + The number of elements stored in the new list. + https://redis.io/commands/sort + + + + Adds the specified member with the specified score to the sorted set stored at key. If the specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering. + + The key of the sorted set. + The member to add to the sorted set. + The score for the member to add to the sorted set. + The flags to use for this operation. + True if the value was added, False if it already existed (the score is still updated) + https://redis.io/commands/zadd + + + + Adds the specified member with the specified score to the sorted set stored at key. If the specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering. + + The key of the sorted set. + The member to add to the sorted set. + The score for the member to add to the sorted set. + What conditions to add the element under (defaults to always). + The flags to use for this operation. + True if the value was added, False if it already existed (the score is still updated) + https://redis.io/commands/zadd + + + + Adds all the specified members with the specified scores to the sorted set stored at key. If a specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering. + + The key of the sorted set. + The members and values to add to the sorted set. + The flags to use for this operation. + The number of elements added to the sorted sets, not including elements already existing for which the score was updated. + https://redis.io/commands/zadd + + + + Adds all the specified members with the specified scores to the sorted set stored at key. If a specified member is already a member of the sorted set, the score is updated and the element reinserted at the right position to ensure the correct ordering. + + The key of the sorted set. + The members and values to add to the sorted set. + What conditions to add the element under (defaults to always). + The flags to use for this operation. + The number of elements added to the sorted sets, not including elements already existing for which the score was updated. + https://redis.io/commands/zadd + + + + Computes a set operation over two sorted sets, and stores the result in destination, optionally performing + a specific aggregation (defaults to sum). + + The operation to perform. + The key to store the results in. + The key of the first sorted set. + The key of the second sorted set. + The aggregation method (defaults to sum). + The flags to use for this operation. + https://redis.io/commands/zunionstore + https://redis.io/commands/zinterstore + the number of elements in the resulting sorted set at destination + + + + Computes a set operation over multiple sorted sets (optionally using per-set weights), and stores the result in destination, optionally performing + a specific aggregation (defaults to sum). + + The operation to perform. + The key to store the results in. + The keys of the sorted sets. + The optional weights per set that correspond to . + The aggregation method (defaults to sum). + The flags to use for this operation. + https://redis.io/commands/zunionstore + https://redis.io/commands/zinterstore + the number of elements in the resulting sorted set at destination + + + + Decrements the score of member in the sorted set stored at key by decrement. If member does not exist in the sorted set, it is added with -decrement as its score (as if its previous score was 0.0). + + The key of the sorted set. + The member to decrement. + The amount to decrement by. + The flags to use for this operation. + The new score of member. + https://redis.io/commands/zincrby + + + + Increments the score of member in the sorted set stored at key by increment. If member does not exist in the sorted set, it is added with increment as its score (as if its previous score was 0.0). + + The key of the sorted set. + The member to increment. + The amount to increment by. + The flags to use for this operation. + The new score of member. + https://redis.io/commands/zincrby + + + + Returns the sorted set cardinality (number of elements) of the sorted set stored at key. + + The key of the sorted set. + The min score to filter by (defaults to negative infinity). + The max score to filter by (defaults to positive infinity). + Whether to exclude and from the range check (defaults to both inclusive). + The flags to use for this operation. + The cardinality (number of elements) of the sorted set, or 0 if key does not exist. + https://redis.io/commands/zcard + + + + When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command returns the number of elements in the sorted set at key with a value between min and max. + + The key of the sorted set. + The min value to filter by. + The max value to filter by. + Whether to exclude and from the range check (defaults to both inclusive). + The flags to use for this operation. + The number of elements in the specified score range. + https://redis.io/commands/zlexcount + + + + Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score. + Both start and stop are zero-based indexes, where 0 is the first element, 1 is the next element and so on. They can also be negative numbers indicating offsets from the end of the sorted set, with -1 being the last element of the sorted set, -2 the penultimate element and so on. + + The key of the sorted set. + The start index to get. + The stop index to get. + The order to sort by (defaults to ascending). + The flags to use for this operation. + List of elements in the specified range. + https://redis.io/commands/zrange + https://redis.io/commands/zrevrange + + + + Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score. + Both start and stop are zero-based indexes, where 0 is the first element, 1 is the next element and so on. They can also be negative numbers indicating offsets from the end of the sorted set, with -1 being the last element of the sorted set, -2 the penultimate element and so on. + + The key of the sorted set. + The start index to get. + The stop index to get. + The order to sort by (defaults to ascending). + The flags to use for this operation. + List of elements in the specified range. + https://redis.io/commands/zrange + https://redis.io/commands/zrevrange + + + + Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score. + Start and stop are used to specify the min and max range for score values. Similar to other range methods the values are inclusive. + + The key of the sorted set. + The minimum score to filter by. + The maximum score to filter by. + Which of and to exclude (defaults to both inclusive). + The order to sort by (defaults to ascending). + How many items to skip. + How many items to take. + The flags to use for this operation. + List of elements in the specified score range. + https://redis.io/commands/zrangebyscore + https://redis.io/commands/zrevrangebyscore + + + + Returns the specified range of elements in the sorted set stored at key. By default the elements are considered to be ordered from the lowest to the highest score. Lexicographical order is used for elements with equal score. + Start and stop are used to specify the min and max range for score values. Similar to other range methods the values are inclusive. + + The key of the sorted set. + The minimum score to filter by. + The maximum score to filter by. + Which of and to exclude (defaults to both inclusive). + The order to sort by (defaults to ascending). + How many items to skip. + How many items to take. + The flags to use for this operation. + List of elements in the specified score range. + https://redis.io/commands/zrangebyscore + https://redis.io/commands/zrevrangebyscore + + + + When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command returns all the elements in the sorted set at key with a value between min and max. + + The key of the sorted set. + The min value to filter by. + The max value to filter by. + Which of and to exclude (defaults to both inclusive). + How many items to skip. + How many items to take. + The flags to use for this operation. + https://redis.io/commands/zrangebylex + list of elements in the specified score range. + + + + When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command returns all the elements in the sorted set at key with a value between min and max. + + The key of the sorted set. + The min value to filter by. + The max value to filter by. + Which of and to exclude (defaults to both inclusive). + Whether to order the data ascending or descending + How many items to skip. + How many items to take. + The flags to use for this operation. + https://redis.io/commands/zrangebylex + https://redis.io/commands/zrevrangebylex + list of elements in the specified score range. + + + + Returns the rank of member in the sorted set stored at key, by default with the scores ordered from low to high. The rank (or index) is 0-based, which means that the member with the lowest score has rank 0. + + The key of the sorted set. + The member to get the rank of. + The order to sort by (defaults to ascending). + The flags to use for this operation. + If member exists in the sorted set, the rank of member; If member does not exist in the sorted set or key does not exist, null + https://redis.io/commands/zrank + https://redis.io/commands/zrevrank + + + + Removes the specified member from the sorted set stored at key. Non existing members are ignored. + + The key of the sorted set. + The member to remove. + The flags to use for this operation. + True if the member existed in the sorted set and was removed; False otherwise. + https://redis.io/commands/zrem + + + + Removes the specified members from the sorted set stored at key. Non existing members are ignored. + + The key of the sorted set. + The members to remove. + The flags to use for this operation. + The number of members removed from the sorted set, not including non existing members. + https://redis.io/commands/zrem + + + + Removes all elements in the sorted set stored at key with rank between start and stop. Both start and stop are 0 -based indexes with 0 being the element with the lowest score. These indexes can be negative numbers, where they indicate offsets starting at the element with the highest score. For example: -1 is the element with the highest score, -2 the element with the second highest score and so forth. + + The key of the sorted set. + The minimum rank to remove. + The maximum rank to remove. + The flags to use for this operation. + The number of elements removed. + https://redis.io/commands/zremrangebyrank + + + + Removes all elements in the sorted set stored at key with a score between min and max (inclusive by default). + + The key of the sorted set. + The minimum score to remove. + The maximum score to remove. + Which of and to exclude (defaults to both inclusive). + The flags to use for this operation. + The number of elements removed. + https://redis.io/commands/zremrangebyscore + + + + When all the elements in a sorted set are inserted with the same score, in order to force lexicographical ordering, this command removes all elements in the sorted set stored at key between the lexicographical range specified by min and max. + + The key of the sorted set. + The minimum value to remove. + The maximum value to remove. + Which of and to exclude (defaults to both inclusive). + The flags to use for this operation. + the number of elements removed. + https://redis.io/commands/zremrangebylex + + + + The SSCAN command is used to incrementally iterate over set; note: to resume an iteration via cursor, cast the original enumerable or enumerator to IScanningCursor. + + The key of the set. + The pattern to match. + The page size to iterate by. + The cursor position to start at. + The page offset to start at. + The flags to use for this operation. + Yields all matching elements of the set. + https://redis.io/commands/sscan + + + + The ZSCAN command is used to incrementally iterate over a sorted set + + The key of the sorted set. + The pattern to match. + The page size to iterate by. + The flags to use for this operation. + The cursor position to start at. + The page offset to start at. + Yields all matching elements of the sorted set. + https://redis.io/commands/zscan + + + + Returns the score of member in the sorted set at key; If member does not exist in the sorted set, or key does not exist, nil is returned. + + The key of the sorted set. + The member to get a score for. + The flags to use for this operation. + The score of the member. + https://redis.io/commands/zscore + + + + Removes and returns the first element from the sorted set stored at key, by default with the scores ordered from low to high. + + The key of the sorted set. + The order to sort by (defaults to ascending). + The flags to use for this operation. + The removed element, or nil when key does not exist. + https://redis.io/commands/zpopmin + https://redis.io/commands/zpopmax + + + + Removes and returns the specified number of first elements from the sorted set stored at key, by default with the scores ordered from low to high. + + The key of the sorted set. + The number of elements to return. + The order to sort by (defaults to ascending). + The flags to use for this operation. + An array of elements, or an empty array when key does not exist. + https://redis.io/commands/zpopmin + https://redis.io/commands/zpopmax + + + + Allow the consumer to mark a pending message as correctly processed. Returns the number of messages acknowledged. + + The key of the stream. + The name of the consumer group that received the message. + The ID of the message to acknowledge. + The flags to use for this operation. + The number of messages acknowledged. + https://redis.io/topics/streams-intro + + + + Allow the consumer to mark a pending message as correctly processed. Returns the number of messages acknowledged. + + The key of the stream. + The name of the consumer group that received the message. + The IDs of the messages to acknowledge. + The flags to use for this operation. + The number of messages acknowledged. + https://redis.io/topics/streams-intro + + + + Adds an entry using the specified values to the given stream key. If key does not exist, a new key holding a stream is created. The command returns the ID of the newly created stream entry. + + The key of the stream. + The field name for the stream entry. + The value to set in the stream entry. + The ID to assign to the stream entry, defaults to an auto-generated ID ("*"). + The maximum length of the stream. + If true, the "~" argument is used to allow the stream to exceed max length by a small number. This improves performance when removing messages. + The flags to use for this operation. + The ID of the newly created message. + https://redis.io/commands/xadd + + + + Adds an entry using the specified values to the given stream key. If key does not exist, a new key holding a stream is created. The command returns the ID of the newly created stream entry. + + The key of the stream. + The fields and their associated values to set in the stream entry. + The ID to assign to the stream entry, defaults to an auto-generated ID ("*"). + The maximum length of the stream. + If true, the "~" argument is used to allow the stream to exceed max length by a small number. This improves performance when removing messages. + The flags to use for this operation. + The ID of the newly created message. + https://redis.io/commands/xadd + + + + Change ownership of messages consumed, but not yet acknowledged, by a different consumer. This method returns the complete message for the claimed message(s). + + The key of the stream. + The consumer group. + The consumer claiming the given messages. + The minimum message idle time to allow the reassignment of the message(s). + The IDs of the messages to claim for the given consumer. + The flags to use for this operation. + The messages successfully claimed by the given consumer. + https://redis.io/topics/streams-intro + + + + Change ownership of messages consumed, but not yet acknowledged, by a different consumer. This method returns the IDs for the claimed message(s). + + The key of the stream. + The consumer group. + The consumer claiming the given message(s). + The minimum message idle time to allow the reassignment of the message(s). + The IDs of the messages to claim for the given consumer. + The flags to use for this operation. + The message IDs for the messages successfully claimed by the given consumer. + https://redis.io/topics/streams-intro + + + + Set the position from which to read a stream for a consumer group. + + The key of the stream. + The name of the consumer group. + The position from which to read for the consumer group. + The flags to use for this operation. + True if successful, otherwise false. + + + + Retrieve information about the consumers for the given consumer group. This is the equivalent of calling "XINFO GROUPS key group". + + The key of the stream. + The consumer group name. + The flags to use for this operation. + An instance of for each of the consumer group's consumers. + https://redis.io/topics/streams-intro + + + + Create a consumer group for the given stream. + + The key of the stream. + The name of the group to create. + The position to begin reading the stream. Defaults to . + The flags to use for this operation. + True if the group was created. + https://redis.io/topics/streams-intro + + + + Create a consumer group for the given stream. + + The key of the stream. + The name of the group to create. + The position to begin reading the stream. Defaults to . + Create the stream if it does not already exist. + The flags to use for this operation. + True if the group was created. + https://redis.io/topics/streams-intro + + + + Delete messages in the stream. This method does not delete the stream. + + The key of the stream. + The IDs of the messages to delete. + The flags to use for this operation. + Returns the number of messages successfully deleted from the stream. + https://redis.io/topics/streams-intro + + + + Delete a consumer from a consumer group. + + The key of the stream. + The name of the consumer group. + The name of the consumer. + The flags to use for this operation. + The number of messages that were pending for the deleted consumer. + + + + Delete a consumer group. + + The key of the stream. + The name of the consumer group. + The flags to use for this operation. + True if deleted, otherwise false. + + + + Retrieve information about the groups created for the given stream. This is the equivalent of calling "XINFO GROUPS key". + + The key of the stream. + The flags to use for this operation. + An instance of for each of the stream's groups. + https://redis.io/topics/streams-intro + + + + Retrieve information about the given stream. This is the equivalent of calling "XINFO STREAM key". + + The key of the stream. + The flags to use for this operation. + A instance with information about the stream. + https://redis.io/topics/streams-intro + + + + Return the number of entries in a stream. + + The key of the stream. + The flags to use for this operation. + The number of entries inside the given stream. + https://redis.io/commands/xlen + + + + View information about pending messages for a stream. A pending message is a message read using StreamReadGroup (XREADGROUP) but not yet acknowledged. + + The key of the stream. + The name of the consumer group + The flags to use for this operation. + An instance of . contains the number of pending messages, the highest and lowest ID of the pending messages, and the consumers with their pending message count. + The equivalent of calling XPENDING key group. + https://redis.io/commands/xpending + + + + View information about each pending message. + + The key of the stream. + The name of the consumer group. + The maximum number of pending messages to return. + The consumer name for the pending messages. Pass RedisValue.Null to include pending messages for all consumers. + The minimum ID from which to read the stream of pending messages. The method will default to reading from the beginning of the stream. + The maximum ID to read to within the stream of pending messages. The method will default to reading to the end of the stream. + The flags to use for this operation. + An instance of for each pending message. + Equivalent of calling XPENDING key group start-id end-id count consumer-name. + https://redis.io/commands/xpending + + + + Read a stream using the given range of IDs. + + The key of the stream. + The minimum ID from which to read the stream. The method will default to reading from the beginning of the stream. + The maximum ID to read to within the stream. The method will default to reading to the end of the stream. + The maximum number of messages to return. + The order of the messages. will execute XRANGE and wil execute XREVRANGE. + The flags to use for this operation. + Returns an instance of for each message returned. + https://redis.io/commands/xrange + + + + Read from a single stream. + + The key of the stream. + The position from which to read the stream. + The maximum number of messages to return. + The flags to use for this operation. + Returns an instance of for each message returned. + Equivalent of calling XREAD COUNT num STREAMS key id. + https://redis.io/commands/xread + + + + Read from multiple streams. + + Array of streams and the positions from which to begin reading for each stream. + The maximum number of messages to return from each stream. + The flags to use for this operation. + A value of for each stream. + Equivalent of calling XREAD COUNT num STREAMS key1 key2 id1 id2. + https://redis.io/commands/xread + + + + Read messages from a stream into an associated consumer group. + + The key of the stream. + The name of the consumer group. + The consumer name. + The position from which to read the stream. Defaults to when null. + The maximum number of messages to return. + The flags to use for this operation. + Returns a value of for each message returned. + https://redis.io/commands/xreadgroup + + + + Read messages from a stream into an associated consumer group. + + The key of the stream. + The name of the consumer group. + The consumer name. + The position from which to read the stream. Defaults to when null. + The maximum number of messages to return. + When true, the message will not be added to the pending message list. + The flags to use for this operation. + Returns a value of for each message returned. + https://redis.io/commands/xreadgroup + + + + Read from multiple streams into the given consumer group. The consumer group with the given + will need to have been created for each stream prior to calling this method. + + Array of streams and the positions from which to begin reading for each stream. + The name of the consumer group. + + The maximum number of messages to return from each stream. + The flags to use for this operation. + A value of for each stream. + Equivalent of calling XREADGROUP GROUP groupName consumerName COUNT countPerStream STREAMS stream1 stream2 id1 id2 + https://redis.io/commands/xreadgroup + + + + Read from multiple streams into the given consumer group. The consumer group with the given + will need to have been created for each stream prior to calling this method. + + Array of streams and the positions from which to begin reading for each stream. + The name of the consumer group. + + The maximum number of messages to return from each stream. + When true, the message will not be added to the pending message list. + The flags to use for this operation. + A value of for each stream. + Equivalent of calling XREADGROUP GROUP groupName consumerName COUNT countPerStream STREAMS stream1 stream2 id1 id2 + https://redis.io/commands/xreadgroup + + + + Trim the stream to a specified maximum length. + + The key of the stream. + The maximum length of the stream. + If true, the "~" argument is used to allow the stream to exceed max length by a small number. This improves performance when removing messages. + The flags to use for this operation. + The number of messages removed from the stream. + https://redis.io/topics/streams-intro + + + + If key already exists and is a string, this command appends the value at the end of the string. If key does not exist it is created and set as an empty string, + so APPEND will be similar to SET in this special case. + + The key of the string. + The value to append to the string. + The flags to use for this operation. + The length of the string after the append operation. + https://redis.io/commands/append + + + + Count the number of set bits (population counting) in a string. + By default all the bytes contained in the string are examined. It is possible to specify the counting operation only in an interval passing the additional arguments start and end. + Like for the GETRANGE command start and end can contain negative values in order to index bytes starting from the end of the string, where -1 is the last byte, -2 is the penultimate, and so forth. + + The key of the string. + The start byte to count at. + The end byte to count at. + The flags to use for this operation. + The number of bits set to 1. + https://redis.io/commands/bitcount + + + + Perform a bitwise operation between multiple keys (containing string values) and store the result in the destination key. + The BITOP command supports four bitwise operations; note that NOT is a unary operator: the second key should be omitted in this case + and only the first key will be considered. + The result of the operation is always stored at destkey. + + The operation to perform. + The destination key to store the result in. + The first key to get the bit value from. + The second key to get the bit value from. + The flags to use for this operation. + The size of the string stored in the destination key, that is equal to the size of the longest input string. + https://redis.io/commands/bitop + + + + Perform a bitwise operation between multiple keys (containing string values) and store the result in the destination key. + The BITOP command supports four bitwise operations; note that NOT is a unary operator. + The result of the operation is always stored at destkey. + + The operation to perform. + The destination key to store the result in. + The keys to get the bit values from. + The flags to use for this operation. + The size of the string stored in the destination key, that is equal to the size of the longest input string. + https://redis.io/commands/bitop + + + + Return the position of the first bit set to 1 or 0 in a string. + The position is returned thinking at the string as an array of bits from left to right where the first byte most significant bit is at position 0, the second byte most significant bit is at position 8 and so forth. + An start and end may be specified; these are in bytes, not bits; start and end can contain negative values in order to index bytes starting from the end of the string, where -1 is the last byte, -2 is the penultimate, and so forth. + + The key of the string. + True to check for the first 1 bit, false to check for the first 0 bit. + The position to start looking (defaults to 0). + The position to stop looking (defaults to -1, unlimited). + The flags to use for this operation. + The command returns the position of the first bit set to 1 or 0 according to the request. + If we look for set bits(the bit argument is 1) and the string is empty or composed of just zero bytes, -1 is returned. + https://redis.io/commands/bitpos + + + + Decrements the number stored at key by decrement. If the key does not exist, it is set to 0 before performing the operation. + An error is returned if the key contains a value of the wrong type or contains a string that is not representable as integer. This operation is limited to 64 bit signed integers. + + The key of the string. + The amount to decrement by (defaults to 1). + The flags to use for this operation. + The value of key after the decrement. + https://redis.io/commands/decrby + https://redis.io/commands/decr + + + + Decrements the string representing a floating point number stored at key by the specified decrement. If the key does not exist, it is set to 0 before performing the operation. The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation. + + The key of the string. + The amount to decrement by (defaults to 1). + The flags to use for this operation. + The value of key after the decrement. + https://redis.io/commands/incrbyfloat + + + + Get the value of key. If the key does not exist the special value nil is returned. An error is returned if the value stored at key is not a string, because GET only handles string values. + + The key of the string. + The flags to use for this operation. + The value of key, or nil when key does not exist. + https://redis.io/commands/get + + + + Returns the values of all specified keys. For every key that does not hold a string value or does not exist, the special value nil is returned. + + The keys of the strings. + The flags to use for this operation. + The values of the strings with nil for keys do not exist. + https://redis.io/commands/mget + + + + Get the value of key. If the key does not exist the special value nil is returned. An error is returned if the value stored at key is not a string, because GET only handles string values. + + The key of the string. + The flags to use for this operation. + The value of key, or nil when key does not exist. + https://redis.io/commands/get + + + + Returns the bit value at offset in the string value stored at key. + When offset is beyond the string length, the string is assumed to be a contiguous space with 0 bits. + + The key of the string. + The offset in the string to get a bit at. + The flags to use for this operation. + The bit value stored at offset. + https://redis.io/commands/getbit + + + + Returns the substring of the string value stored at key, determined by the offsets start and end (both are inclusive). Negative offsets can be used in order to provide an offset starting from the end of the string. So -1 means the last character, -2 the penultimate and so forth. + + The key of the string. + The start index of the substring to get. + The end index of the substring to get. + The flags to use for this operation. + The substring of the string value stored at key. + https://redis.io/commands/getrange + + + + Atomically sets key to value and returns the old value stored at key. + + The key of the string. + The value to replace the existing value with. + The flags to use for this operation. + The old value stored at key, or nil when key did not exist. + https://redis.io/commands/getset + + + + Get the value of key and delete the key. If the key does not exist the special value nil is returned. An error is returned if the value stored at key is not a string, because GET only handles string values. + + The key of the string. + The flags to use for this operation. + The value of key, or nil when key does not exist. + https://redis.io/commands/getdelete + + + + Get the value of key. If the key does not exist the special value nil is returned. An error is returned if the value stored at key is not a string, because GET only handles string values. + + The key of the string. + The flags to use for this operation. + The value of key and its expiry, or nil when key does not exist. + https://redis.io/commands/get + + + + Increments the number stored at key by increment. If the key does not exist, it is set to 0 before performing the operation. An error is returned if the key contains a value of the wrong type or contains a string that is not representable as integer. This operation is limited to 64 bit signed integers. + + The key of the string. + The amount to increment by (defaults to 1). + The flags to use for this operation. + The value of key after the increment. + https://redis.io/commands/incrby + https://redis.io/commands/incr + + + + Increments the string representing a floating point number stored at key by the specified increment. If the key does not exist, it is set to 0 before performing the operation. The precision of the output is fixed at 17 digits after the decimal point regardless of the actual internal precision of the computation. + + The key of the string. + The amount to increment by (defaults to 1). + The flags to use for this operation. + The value of key after the increment. + https://redis.io/commands/incrbyfloat + + + + Returns the length of the string value stored at key. + + The key of the string. + The flags to use for this operation. + the length of the string at key, or 0 when key does not exist. + https://redis.io/commands/strlen + + + + Set key to hold the string value. If key already holds a value, it is overwritten, regardless of its type. + + The key of the string. + The value to set. + The expiry to set. + Which condition to set the value under (defaults to always). + The flags to use for this operation. + True if the string was set, false otherwise. + https://redis.io/commands/set + + + + Sets the given keys to their respective values. If "not exists" is specified, this will not perform any operation at all even if just a single key already exists. + + The keys and values to set. + Which condition to set the value under (defaults to always). + The flags to use for this operation. + True if the keys were set, else False + https://redis.io/commands/mset + https://redis.io/commands/msetnx + + + + Sets or clears the bit at offset in the string value stored at key. + The bit is either set or cleared depending on value, which can be either 0 or 1. When key does not exist, a new string value is created.The string is grown to make sure it can hold a bit at offset. + + The key of the string. + The offset in the string to set . + The bit value to set, true for 1, false for 0. + The flags to use for this operation. + The original bit value stored at offset. + https://redis.io/commands/setbit + + + + Overwrites part of the string stored at key, starting at the specified offset, for the entire length of value. If the offset is larger than the current length of the string at key, the string is padded with zero-bytes to make offset fit. Non-existing keys are considered as empty strings, so this command will make sure it holds a string large enough to be able to set value at offset. + + The key of the string. + The offset in the string to overwrite. + The value to overwrite with. + The flags to use for this operation. + The length of the string after it was modified by the command. + https://redis.io/commands/setrange + + + + Touch the specified key. + + The key to touch. + The flags to use for this operation. + True if the key was touched. + https://redis.io/commands/touch + + + + Youch the specified keys. A key is ignored if it does not exist. + + The keys to touch. + The flags to use for this operation. + The number of keys that were touched. + https://redis.io/commands/touch + + + + Describes retry policy functionality that can be provided to the multiplexer to be used for connection reconnects + + + + + This method is called by the multiplexer to determine if a reconnect operation can be retried now. + + The number of times reconnect retries have already been made by the multiplexer while it was in connecting state + Total time elapsed in milliseconds since the last reconnect retry was made + + + + Common operations available to all redis connections + + + + + This command is often used to test if a connection is still alive, or to measure latency. + + The command flags to use when pinging. + The observed latency. + https://redis.io/commands/ping + + + + Common operations available to all redis connections + + + + + Gets the multiplexer that created this instance + + + + + This command is often used to test if a connection is still alive, or to measure latency. + + The command flags to use. + The observed latency. + https://redis.io/commands/ping + + + + Wait for a given asynchronous operation to complete (or timeout), reporting which + + The task to wait on. + + + + Wait for a given asynchronous operation to complete (or timeout) + + The task to wait on. + + + + Wait for a given asynchronous operation to complete (or timeout) + + The type of task to wait on. + The task to wait on. + + + + Wait for the given asynchronous operations to complete (or timeout) + + The tasks to wait on. + + + + Represents a resumable, cursor-based scanning operation + + + + + Returns the cursor that represents the *active* page of results (not the pending/next page of results as returned by SCAN/HSCAN/ZSCAN/SSCAN) + + + + + The page size of the current operation + + + + + The offset into the current page + + + + + Provides configuration controls of a redis server + + + + + Gets the cluster configuration associated with this server, if known + + + + + Gets the address of the connected server + + + + + Gets the features available to the connected server + + + + + Gets whether the connection to the server is active and usable + + + + + Gets whether the connected server is a replica + + + + + Gets whether the connected server is a replica + + + + + Explicitly opt in for replica writes on writable replica + + + + + Explicitly opt in for replica writes on writable replica + + + + + Gets the operating mode of the connected server + + + + + Gets the version of the connected server + + + + + The number of databases supported on this server + + + + + The CLIENT KILL command closes a given client connection identified by ip:port. + The ip:port should match a line returned by the CLIENT LIST command. + Due to the single-threaded nature of Redis, it is not possible to kill a client connection while it is executing a command.From the client point of view, the connection can never be closed in the middle of the execution of a command.However, the client will notice the connection has been closed only when the next command is sent (and results in network error). + + The endpoint of the client to kill. + The command flags to use. + https://redis.io/commands/client-kill + + + + The CLIENT KILL command closes a given client connection identified by ip:port. + The ip:port should match a line returned by the CLIENT LIST command. + Due to the single-threaded nature of Redis, it is not possible to kill a client connection while it is executing a command.From the client point of view, the connection can never be closed in the middle of the execution of a command.However, the client will notice the connection has been closed only when the next command is sent (and results in network error). + + The endpoint of the client to kill. + The command flags to use. + https://redis.io/commands/client-kill + + + + The CLIENT KILL command closes multiple connections that match the specified filters + + The ID of the client to kill. + The type of client. + The endpoint to kill. + Whether to kskip the current connection. + The command flags to use. + the number of clients killed. + https://redis.io/commands/client-kill + + + + The CLIENT KILL command closes multiple connections that match the specified filters + + The ID of the client to kill. + The type of client. + The endpoint to kill. + Whether to kskip the current connection. + The command flags to use. + the number of clients killed. + https://redis.io/commands/client-kill + + + + The CLIENT LIST command returns information and statistics about the client connections server in a mostly human readable format. + + The command flags to use. + https://redis.io/commands/client-list + + + + The CLIENT LIST command returns information and statistics about the client connections server in a mostly human readable format. + + The command flags to use. + https://redis.io/commands/client-list + + + + Obtains the current CLUSTER NODES output from a cluster server + + The command flags to use. + + + + Obtains the current CLUSTER NODES output from a cluster server + + The command flags to use. + + + + Obtains the current raw CLUSTER NODES output from a cluster server + + The command flags to use. + + + + Obtains the current raw CLUSTER NODES output from a cluster server + + The command flags to use. + + + + Get all configuration parameters matching the specified pattern. + + The pattern of config values to get. + The command flags to use. + All matching configuration parameters. + https://redis.io/commands/config-get + + + + Get all configuration parameters matching the specified pattern. + + The pattern of config values to get. + The command flags to use. + All matching configuration parameters. + https://redis.io/commands/config-get + + + + Resets the statistics reported by Redis using the INFO command. + + The command flags to use. + https://redis.io/commands/config-resetstat + + + + Resets the statistics reported by Redis using the INFO command. + + The command flags to use. + https://redis.io/commands/config-resetstat + + + + The CONFIG REWRITE command rewrites the redis.conf file the server was started with, applying the minimal changes needed to make it reflecting the configuration currently used by the server, that may be different compared to the original one because of the use of the CONFIG SET command. + + The command flags to use. + https://redis.io/commands/config-rewrite + + + + The CONFIG REWRITE command rewrites the redis.conf file the server was started with, applying the minimal changes needed to make it reflecting the configuration currently used by the server, that may be different compared to the original one because of the use of the CONFIG SET command. + + The command flags to use. + https://redis.io/commands/config-rewrite + + + + The CONFIG SET command is used in order to reconfigure the server at runtime without the need to restart Redis. You can change both trivial parameters or switch from one to another persistence option using this command. + + The setting name. + The new setting value. + The command flags to use. + https://redis.io/commands/config-set + + + + The CONFIG SET command is used in order to reconfigure the server at runtime without the need to restart Redis. You can change both trivial parameters or switch from one to another persistence option using this command. + + The setting name. + The new setting value. + The command flags to use. + https://redis.io/commands/config-set + + + + Return the number of keys in the database. + + The database ID. + The command flags to use. + https://redis.io/commands/dbsize + + + + Return the number of keys in the database. + + The database ID. + The command flags to use. + https://redis.io/commands/dbsize + + + + Return the same message passed in. + + The message to echo. + The command flags to use. + https://redis.io/commands/echo + + + + Return the same message passed in. + + The message to echo. + The command flags to use. + https://redis.io/commands/echo + + + + Execute an arbitrary command against the server; this is primarily intended for + executing modules, but may also be used to provide access to new features that lack + a direct API. + + The command to run. + The arguments to pass for the command. + This API should be considered an advanced feature; inappropriate use can be harmful + A dynamic representation of the command's result + + + + Execute an arbitrary command against the server; this is primarily intended for + executing modules, but may also be used to provide access to new features that lack + a direct API. + + The command to run. + The arguments to pass for the command. + The flags to use for this operation. + This API should be considered an advanced feature; inappropriate use can be harmful + A dynamic representation of the command's result + + + + Execute an arbitrary command against the server; this is primarily intended for + executing modules, but may also be used to provide access to new features that lack + a direct API. + + The command to run. + The arguments to pass for the command. + This API should be considered an advanced feature; inappropriate use can be harmful + A dynamic representation of the command's result + + + + Execute an arbitrary command against the server; this is primarily intended for + executing modules, but may also be used to provide access to new features that lack + a direct API. + + The command to run. + The arguments to pass for the command. + The flags to use for this operation. + This API should be considered an advanced feature; inappropriate use can be harmful + A dynamic representation of the command's result + + + + Delete all the keys of all databases on the server. + + The command flags to use. + https://redis.io/commands/flushall + + + + Delete all the keys of all databases on the server. + + The command flags to use. + https://redis.io/commands/flushall + + + + Delete all the keys of the database. + + The database ID. + The command flags to use. + https://redis.io/commands/flushdb + + + + Delete all the keys of the database. + + The database ID. + The command flags to use. + https://redis.io/commands/flushdb + + + + Get summary statistics associates with this server + + + + + The INFO command returns information and statistics about the server in a format that is simple to parse by computers and easy to read by humans. + + The info section to get, if getting a specific one. + The command flags to use. + https://redis.io/commands/info + + + + The INFO command returns information and statistics about the server in a format that is simple to parse by computers and easy to read by humans. + + The info section to get, if getting a specific one. + The command flags to use. + https://redis.io/commands/info + + + + The INFO command returns information and statistics about the server in a format that is simple to parse by computers and easy to read by humans. + + The info section to get, if getting a specific one. + The command flags to use. + https://redis.io/commands/info + + + + The INFO command returns information and statistics about the server in a format that is simple to parse by computers and easy to read by humans. + + The info section to get, if getting a specific one. + The command flags to use. + https://redis.io/commands/info + + + + Returns all keys matching pattern; the KEYS or SCAN commands will be used based on the server capabilities. + + The database ID. + The pattern to use. + The page size to iterate by. + The command flags to use. + Warning: consider KEYS as a command that should only be used in production environments with extreme care. + https://redis.io/commands/keys + https://redis.io/commands/scan + + + + Returns all keys matching pattern; the KEYS or SCAN commands will be used based on the server capabilities; note: to resume an iteration via cursor, cast the original enumerable or enumerator to IScanningCursor. + + The database ID. + The pattern to use. + The page size to iterate by. + The cursor position to resume at. + The page offset to start at. + The command flags to use. + Warning: consider KEYS as a command that should only be used in production environments with extreme care. + https://redis.io/commands/keys + https://redis.io/commands/scan + + + + Returns all keys matching pattern; the KEYS or SCAN commands will be used based on the server capabilities; note: to resume an iteration via cursor, cast the original enumerable or enumerator to IScanningCursor. + + The database ID. + The pattern to use. + The page size to iterate by. + The cursor position to resume at. + The page offset to start at. + The command flags to use. + Warning: consider KEYS as a command that should only be used in production environments with extreme care. + https://redis.io/commands/keys + https://redis.io/commands/scan + + + + Return the time of the last DB save executed with success. A client may check if a BGSAVE command succeeded reading the LASTSAVE value, then issuing a BGSAVE command and checking at regular intervals every N seconds if LASTSAVE changed. + + The command flags to use. + https://redis.io/commands/lastsave + + + + Return the time of the last DB save executed with success. A client may check if a BGSAVE command succeeded reading the LASTSAVE value, then issuing a BGSAVE command and checking at regular intervals every N seconds if LASTSAVE changed. + + The command flags to use. + https://redis.io/commands/lastsave + + + + Promote the selected node to be master + + The options to use for this topology change. + The log to write output to. + + + + Returns the role info for the current server. + + https://redis.io/commands/role + + + + Returns the role info for the current server. + + https://redis.io/commands/role + + + + Explicitly request the database to persist the current state to disk + + The method of the save (e.g. background or foreground). + The command flags to use. + https://redis.io/commands/bgrewriteaof + https://redis.io/commands/bgsave + https://redis.io/commands/save + https://redis.io/topics/persistence + + + + Explicitly request the database to persist the current state to disk + + The method of the save (e.g. background or foreground). + The command flags to use. + https://redis.io/commands/bgrewriteaof + https://redis.io/commands/bgsave + https://redis.io/commands/save + https://redis.io/topics/persistence + + + + Indicates whether the specified script is defined on the server + + The text of the script to check for on the server. + The command flags to use. + + + + Indicates whether the specified script hash is defined on the server + + The SHA1 of the script to check for on the server. + The command flags to use. + + + + Indicates whether the specified script is defined on the server + + The text of the script to check for on the server. + The command flags to use. + + + + Indicates whether the specified script hash is defined on the server + + The SHA1 of the script to check for on the server. + The command flags to use. + + + + Removes all cached scripts on this server + + The command flags to use. + + + + Removes all cached scripts on this server + + The command flags to use. + + + + Explicitly defines a script on the server + + The script to load. + The command flags to use. + + + + Explicitly defines a script on the server + + The script to load. + The command flags to use. + + + + Explicitly defines a script on the server + + The script to load. + The command flags to use. + + + + Explicitly defines a script on the server + + The script to load. + The command flags to use. + + + + Asks the redis server to shutdown, killing all connections. Please FULLY read the notes on the SHUTDOWN command. + + The mode of the shutdown. + The command flags to use. + https://redis.io/commands/shutdown + + + + The REPLICAOF command can change the replication settings of a replica on the fly. If a Redis server is already acting as replica, specifying a null master will turn off the replication, turning the Redis server into a MASTER. Specifying a non-null master will make the server a replica of another server listening at the specified hostname and port. + + Endpoint of the new master to replicate from. + The command flags to use. + https://redis.io/commands/replicaof + + + + The REPLICAOF command can change the replication settings of a replica on the fly. If a Redis server is already acting as replica, specifying a null master will turn off the replication, turning the Redis server into a MASTER. Specifying a non-null master will make the server a replica of another server listening at the specified hostname and port. + + Endpoint of the new master to replicate from. + The command flags to use. + https://redis.io/commands/replicaof + + + + The REPLICAOF command can change the replication settings of a replica on the fly. If a Redis server is already acting as replica, specifying a null master will turn off the replication, turning the Redis server into a MASTER. Specifying a non-null master will make the server a replica of another server listening at the specified hostname and port. + + Endpoint of the new master to replicate from. + The command flags to use. + https://redis.io/commands/replicaof + + + + The REPLICAOF command can change the replication settings of a replica on the fly. If a Redis server is already acting as replica, specifying a null master will turn off the replication, turning the Redis server into a MASTER. Specifying a non-null master will make the server a replica of another server listening at the specified hostname and port. + + Endpoint of the new master to replicate from. + The command flags to use. + https://redis.io/commands/replicaof + + + + To read the slow log the SLOWLOG GET command is used, that returns every entry in the slow log. It is possible to return only the N most recent entries passing an additional argument to the command (for instance SLOWLOG GET 10). + + The count of items to get. + The command flags to use. + https://redis.io/commands/slowlog + + + + To read the slow log the SLOWLOG GET command is used, that returns every entry in the slow log. It is possible to return only the N most recent entries passing an additional argument to the command (for instance SLOWLOG GET 10). + + The count of items to get. + The command flags to use. + https://redis.io/commands/slowlog + + + + You can reset the slow log using the SLOWLOG RESET command. Once deleted the information is lost forever. + + The command flags to use. + https://redis.io/commands/slowlog + + + + You can reset the slow log using the SLOWLOG RESET command. Once deleted the information is lost forever. + + The command flags to use. + https://redis.io/commands/slowlog + + + + Lists the currently active channels. An active channel is a Pub/Sub channel with one ore more subscribers (not including clients subscribed to patterns). + + The channel name pattern to get channels for. + The command flags to use. + a list of active channels, optionally matching the specified pattern. + https://redis.io/commands/pubsub + + + + Lists the currently active channels. An active channel is a Pub/Sub channel with one ore more subscribers (not including clients subscribed to patterns). + + The channel name pattern to get channels for. + The command flags to use. + a list of active channels, optionally matching the specified pattern. + https://redis.io/commands/pubsub + + + + Returns the number of subscriptions to patterns (that are performed using the PSUBSCRIBE command). Note that this is not just the count of clients subscribed to patterns but the total number of patterns all the clients are subscribed to. + + The command flags to use. + the number of patterns all the clients are subscribed to. + https://redis.io/commands/pubsub + + + + Returns the number of subscriptions to patterns (that are performed using the PSUBSCRIBE command). Note that this is not just the count of clients subscribed to patterns but the total number of patterns all the clients are subscribed to. + + The command flags to use. + the number of patterns all the clients are subscribed to. + https://redis.io/commands/pubsub + + + + Returns the number of subscribers (not counting clients subscribed to patterns) for the specified channel. + + The channel to get a subscriber count for. + The command flags to use. + https://redis.io/commands/pubsub + + + + Returns the number of subscribers (not counting clients subscribed to patterns) for the specified channel. + + The channel to get a subscriber count for. + The command flags to use. + https://redis.io/commands/pubsub + + + + Swaps two Redis databases, so that immediately all the clients connected to a given database will see the data of the other database, and the other way around + + The ID of the first database. + The ID of the second database. + The command flags to use. + https://redis.io/commands/swapdb + + + + Swaps two Redis databases, so that immediately all the clients connected to a given database will see the data of the other database, and the other way around + + The ID of the first database. + The ID of the second database. + The command flags to use. + https://redis.io/commands/swapdb + + + + The TIME command returns the current server time in UTC format. + Use the DateTime.ToLocalTime() method to get local time. + + The command flags to use. + The server's current time. + https://redis.io/commands/time + + + + The TIME command returns the current server time in UTC format. + Use the DateTime.ToLocalTime() method to get local time. + + The command flags to use. + The server's current time. + https://redis.io/commands/time + + + + Gets a text-based latency diagnostic + + https://redis.io/topics/latency-monitor + + + + Gets a text-based latency diagnostic + + https://redis.io/topics/latency-monitor + + + + Resets the given events (or all if none are specified), discarding the currently logged latency spike events, and resetting the maximum event time register. + + https://redis.io/topics/latency-monitor + + + + Resets the given events (or all if none are specified), discarding the currently logged latency spike events, and resetting the maximum event time register. + + https://redis.io/topics/latency-monitor + + + + Fetch raw latency data from the event time series, as timestamp-latency pairs + + https://redis.io/topics/latency-monitor + + + + Fetch raw latency data from the event time series, as timestamp-latency pairs + + https://redis.io/topics/latency-monitor + + + + Fetch raw latency data from the event time series, as timestamp-latency pairs + + https://redis.io/topics/latency-monitor + + + + Fetch raw latency data from the event time series, as timestamp-latency pairs + + https://redis.io/topics/latency-monitor + + + + Reports about different memory-related issues that the Redis server experiences, and advises about possible remedies. + + https://redis.io/commands/memory-doctor + + + + Reports about different memory-related issues that the Redis server experiences, and advises about possible remedies. + + https://redis.io/commands/memory-doctor + + + + Attempts to purge dirty pages so these can be reclaimed by the allocator. + + https://redis.io/commands/memory-purge + + + + Attempts to purge dirty pages so these can be reclaimed by the allocator. + + https://redis.io/commands/memory-purge + + + + Returns an array reply about the memory usage of the server. + + https://redis.io/commands/memory-stats + + + + Returns an array reply about the memory usage of the server. + + https://redis.io/commands/memory-stats + + + + Provides an internal statistics report from the memory allocator. + + https://redis.io/commands/memory-malloc-stats + + + + Provides an internal statistics report from the memory allocator. + + https://redis.io/commands/memory-malloc-stats + + + + Returns the ip and port number of the master with that name. + If a failover is in progress or terminated successfully for this master it returns the address and port of the promoted replica. + + The sentinel service name. + The command flags to use. + the master ip and port + https://redis.io/topics/sentinel + + + + Returns the ip and port number of the master with that name. + If a failover is in progress or terminated successfully for this master it returns the address and port of the promoted replica. + + The sentinel service name. + The command flags to use. + the master ip and port + https://redis.io/topics/sentinel + + + + Returns the ip and port numbers of all known Sentinels + for the given service name. + + the sentinel service name + The command flags to use. + a list of the sentinel ips and ports + + + + Returns the ip and port numbers of all known Sentinels + for the given service name. + + the sentinel service name + The command flags to use. + a list of the sentinel ips and ports + + + + Returns the ip and port numbers of all known Sentinel replicas + for the given service name. + + the sentinel service name + The command flags to use. + a list of the replica ips and ports + + + + Returns the ip and port numbers of all known Sentinel replicas + for the given service name. + + the sentinel service name + The command flags to use. + a list of the replica ips and ports + + + + Show the state and info of the specified master. + + The sentinel service name. + The command flags to use. + the master state as KeyValuePairs + https://redis.io/topics/sentinel + + + + Show the state and info of the specified master. + + The sentinel service name. + The command flags to use. + the master state as KeyValuePairs + https://redis.io/topics/sentinel + + + + Show a list of monitored masters and their state. + + The command flags to use. + an array of master state KeyValuePair arrays + https://redis.io/topics/sentinel + + + + Show a list of monitored masters and their state. + + The command flags to use. + an array of master state KeyValuePair arrays + https://redis.io/topics/sentinel + + + + Show a list of replicas for this master, and their state. + + The sentinel service name. + The command flags to use. + an array of replica state KeyValuePair arrays + https://redis.io/topics/sentinel + + + + Show a list of replicas for this master, and their state. + + The sentinel service name. + The command flags to use. + an array of replica state KeyValuePair arrays + https://redis.io/topics/sentinel + + + + Show a list of replicas for this master, and their state. + + The sentinel service name. + The command flags to use. + an array of replica state KeyValuePair arrays + https://redis.io/topics/sentinel + + + + Show a list of replicas for this master, and their state. + + The sentinel service name. + The command flags to use. + an array of replica state KeyValuePair arrays + https://redis.io/topics/sentinel + + + + Force a failover as if the master was not reachable, and without asking for agreement to other Sentinels + (however a new version of the configuration will be published so that the other Sentinels will update their configurations). + + The sentinel service name. + The command flags to use. + https://redis.io/topics/sentinel + + + + Force a failover as if the master was not reachable, and without asking for agreement to other Sentinels + (however a new version of the configuration will be published so that the other Sentinels will update their configurations). + + The sentinel service name. + The command flags to use. + https://redis.io/topics/sentinel + + + + Show a list of sentinels for a master, and their state. + + The sentinel service name. + The command flags to use. + https://redis.io/topics/sentinel + + + + Show a list of sentinels for a master, and their state. + + The sentinel service name. + The command flags to use. + https://redis.io/topics/sentinel + + + + A latency entry as reported by the built-in LATENCY HISTORY command + + + + + The time at which this entry was recorded + + + + + The latency recorded for this event + + + + + A latency entry as reported by the built-in LATENCY LATEST command + + + + + The name of this event + + + + + The time at which this entry was recorded + + + + + The latency recorded for this event + + + + + The max latency recorded for all events + + + + + For testing only: Break the connection without mercy or thought + + The server to simulate failure on. + The type of failure(s) to simulate. + + + + A redis connection used as the subscriber in a pub/sub scenario + + + + + Indicate exactly which redis server we are talking to + + The channel to identify the server endpoint by. + The command flags to use. + + + + Indicate exactly which redis server we are talking to + + The channel to identify the server endpoint by. + The command flags to use. + + + + Indicates whether the instance can communicate with the server; + if a channel is specified, the existing subscription map is queried to + resolve the server responsible for that subscription - otherwise the + server is chosen arbitrarily from the masters. + + The channel to identify the server endpoint by. + + + + Posts a message to the given channel. + + The channel to publish to. + The message to publish. + The command flags to use. + the number of clients that received the message. + https://redis.io/commands/publish + + + + Posts a message to the given channel. + + The channel to publish to. + The message to publish. + The command flags to use. + the number of clients that received the message. + https://redis.io/commands/publish + + + + Subscribe to perform some operation when a message to the preferred/active node is broadcast, without any guarantee of ordered handling. + + The channel to subscribe to. + The handler to invoke when a message is received on . + The command flags to use. + https://redis.io/commands/subscribe + https://redis.io/commands/psubscribe + + + + Subscribe to perform some operation when a message to the preferred/active node is broadcast, as a queue that guarantees ordered handling. + + The redis channel to subscribe to. + The command flags to use. + A channel that represents this source + https://redis.io/commands/subscribe + https://redis.io/commands/psubscribe + + + + Subscribe to perform some operation when a change to the preferred/active node is broadcast. + + The channel to subscribe to. + The handler to invoke when a message is received on . + The command flags to use. + https://redis.io/commands/subscribe + https://redis.io/commands/psubscribe + + + + Subscribe to perform some operation when a change to the preferred/active node is broadcast, as a channel. + + The redis channel to subscribe to. + The command flags to use. + A channel that represents this source + https://redis.io/commands/subscribe + https://redis.io/commands/psubscribe + + + + Indicate to which redis server we are actively subscribed for a given channel; returns null if + the channel is not actively subscribed + + The channel to check which server endpoint was subscribed on. + + + + Unsubscribe from a specified message channel; note; if no handler is specified, the subscription is cancelled regardless + of the subscribers; if a handler is specified, the subscription is only cancelled if this handler is the + last handler remaining against the channel + + The channel that was subscribed to. + The handler to no longer invoke when a message is received on . + The command flags to use. + https://redis.io/commands/unsubscribe + https://redis.io/commands/punsubscribe + + + + Unsubscribe all subscriptions on this instance + + The command flags to use. + https://redis.io/commands/unsubscribe + https://redis.io/commands/punsubscribe + + + + Unsubscribe all subscriptions on this instance + + The command flags to use. + https://redis.io/commands/unsubscribe + https://redis.io/commands/punsubscribe + + + + Unsubscribe from a specified message channel; note; if no handler is specified, the subscription is cancelled regardless + of the subscribers; if a handler is specified, the subscription is only cancelled if this handler is the + last handler remaining against the channel + + The channel that was subscribed to. + The handler to no longer invoke when a message is received on . + The command flags to use. + https://redis.io/commands/unsubscribe + https://redis.io/commands/punsubscribe + + + + Represents a group of operations that will be sent to the server as a single unit, + and processed on the server as a single unit. Transactions can also include constraints + (implemented via WATCH), but note that constraint checking involves will (very briefly) + block the connection, since the transaction cannot be correctly committed (EXEC), + aborted (DISCARD) or not applied in the first place (UNWATCH) until the responses from + the constraint checks have arrived. + + https://redis.io/topics/transactions + Note that on a cluster, it may be required that all keys involved in the transaction + (including constraints) are in the same hash-slot + + + + Adds a precondition for this transaction + + The condition to add to the transaction. + + + + Execute the batch operation, sending all queued commands to the server. + + The command flags to use. + + + + Execute the batch operation, sending all queued commands to the server. + + The command flags to use. + + + + Describes internal errors (mainly intended for debugging) + + + + + This constructor is only for testing purposes. + + The source of the event. + + Redis connection type. + The exception occured. + Origin. + + + + Gets the connection-type of the failing connection + + + + + Gets the failing server-endpoint (this can be null) + + + + + Gets the exception if available (this can be null) + + + + + The underlying origin of the error + + + + + Provides the extension method to . + + + + + Creates a new instance that provides an isolated key space + of the specified underyling database instance. + + + The underlying database instance that the returned instance shall use. + + + The prefix that defines a key space isolation for the returned database instance. + + + A new instance that invokes the specified underlying + but prepends the specified + to all key paramters and thus forms a logical key space isolation. + + + + The following methods are not supported in a key space isolated database and + will throw an when invoked: + + + + + + + Please notice that keys passed to a script are prefixed (as normal) but care must + be taken when a script returns the name of a key as that will (currently) not be + "unprefixed". + + + + + + A sized region of contiguous memory backed by a memory pool; disposing the lease returns the memory to the pool + + The type of data being leased + + + + A lease of length zero + + + + + The length of the lease + + + + + Create a new lease + + The size required + Whether to erase the memory + + + + Release all resources owned by the lease + + + + + The data as a Memory + + + + + The data as a Span + + + + + The data as an ArraySegment + + + + + Represents a retry policy that performs retries at a fixed interval. The retries are performed upto a maximum allowed time. + + + + + Initializes a new instance using the specified maximum retry elapsed time allowed. + + maximum elapsed time in milliseconds to be allowed for it to perform retries + + + + This method is called by the ConnectionMultiplexer to determine if a reconnect operation can be retried now. + + The number of times reconnect retries have already been made by the ConnectionMultiplexer while it was in the connecting state + Total elapsed time in milliseconds since the last reconnect retry was made + + + + Represents a Lua script that can be executed on Redis. + + Unlike normal Redis Lua scripts, LuaScript can have named parameters (prefixed by a @). + Public fields and properties of the passed in object are treated as parameters. + + + Parameters of type RedisKey are sent to Redis as KEY (https://redis.io/commands/eval) in addition to arguments, + so as to play nicely with Redis Cluster. + + All members of this class are thread safe. + + + + + The original Lua script that was used to create this. + + + + + The Lua script that will actually be sent to Redis for execution. + All @-prefixed parameter names have been replaced at this point. + + + + + Finalizer, used to prompt cleanups of the script cache when + a LuaScript reference goes out of scope. + + + + + Invalidates the internal cache of LuaScript objects. + Existing LuaScripts will continue to work, but future calls to LuaScript.Prepare + return a new LuaScript instance. + + + + + Returns the number of cached LuaScripts. + + + + + Prepares a Lua script with named parameters to be run against any Redis instance. + + The script to prepare. + + + + Evaluates this LuaScript against the given database, extracting parameters from the passed in object if any. + + The redis database to evaluate against. + The parameter object to use. + The key prefix to use, if any. + The command flags to use. + + + + Evaluates this LuaScript against the given database, extracting parameters from the passed in object if any. + + The redis database to evaluate against. + The parameter object to use. + The key prefix to use, if any. + The command flags to use. + + + + + Loads this LuaScript into the given IServer so it can be run with it's SHA1 hash, instead of + passing the full script on each Evaluate or EvaluateAsync call. + + Note: the FireAndForget command flag cannot be set + + The server to load the script on. + The command flags to use. + + + + + Loads this LuaScript into the given IServer so it can be run with it's SHA1 hash, instead of + passing the full script on each Evaluate or EvaluateAsync call. + + Note: the FireAndForget command flag cannot be set + + The server to load the script on. + The command flags to use. + + + + Represents a Lua script that can be executed on Redis. + + Unlike LuaScript, LoadedLuaScript sends the hash of it's ExecutableScript to Redis rather than pass + the whole script on each call. This requires that the script be loaded into Redis before it is used. + + + To create a LoadedLuaScript first create a LuaScript via LuaScript.Prepare(string), then + call Load(IServer, CommandFlags) on the returned LuaScript. + + + Unlike normal Redis Lua scripts, LoadedLuaScript can have named parameters (prefixed by a @). + Public fields and properties of the passed in object are treated as parameters. + + + Parameters of type RedisKey are sent to Redis as KEY (https://redis.io/commands/eval) in addition to arguments, + so as to play nicely with Redis Cluster. + + All members of this class are thread safe. + + + + + The original script that was used to create this LoadedLuaScript. + + + + + The script that will actually be sent to Redis for execution. + + + + + The SHA1 hash of ExecutableScript. + This is sent to Redis instead of ExecutableScript during Evaluate and EvaluateAsync calls. + + + + + Evaluates this LoadedLuaScript against the given database, extracting parameters for the passed in object if any. + + This method sends the SHA1 hash of the ExecutableScript instead of the script itself. If the script has not + been loaded into the passed Redis instance it will fail. + + + The redis database to evaluate against. + The parameter object to use. + The key prefix to use, if any. + The command flags to use. + + + + Evaluates this LoadedLuaScript against the given database, extracting parameters for the passed in object if any. + + This method sends the SHA1 hash of the ExecutableScript instead of the script itself. If the script has not + been loaded into the passed Redis instance it will fail. + + + The redis database to evaluate against. + The parameter object to use. + The key prefix to use, if any. + The command flags to use. + + + + Azure node maintenance event. For more information, please see: https://aka.ms/redis/maintenanceevents + + + + + Indicates the type of event (raw string form). + + + + + The parsed version of for easier consumption. + + + + + Indicates if the event is for a replica node. + + + + + IPAddress of the node event is intended for. + + + + + SSL Port. + + + + + Non-SSL port. + + + + + The types of notifications that Azure is sending for events happening. + + + + + Unrecognized event type, likely needs a library update to recognize new events. + + + + + Indicates that a maintenance event is scheduled. May be several minutes from now. + + + + + This event gets fired ~20s before maintenance begins. + + + + + This event gets fired when maintenance is imminent (<5s). + + + + + Indicates that the node maintenance operation is over. + + + + + Indicates that a replica has been promoted to primary. + + + + + Indicates that a scale event (adding or removing nodes) has completed for a cluster. + + + + + Base class for all server maintenance events + + + + + Raw message received from the server. + + + + + The time the event was received. If we know when the event is expected to start will be populated. + + + + + Indicates the expected start time of the event. + + + + + Returns a string representing the maintenance event with all of its properties. + + + + + Things with the potential to cause harm, or to reveal configuration information + + + + + This does a few important things: + 1: it suppresses error events for commands that the user isn't interested in + (i.e. "why does my standalone server keep saying ERR unknown command 'cluster' ?") + 2: it allows the initial PING and GET (during connect) to get queued rather + than be rejected as no-server-available (note that this doesn't apply to + handshake messages, as they bypass the queue completely) + 3: it disables non-pref logging, as it is usually server-targeted + + + + + Describes a value contained in a stream (a name/value pair). + + + + + Initializes a value. + + The name for this entry. + The value for this entry. + + + + The name of the field. + + + + + The value of the field. + + + + + Converts to a key/value pair + + The to create a from. + + + + Converts from a key/value pair + + The to get a from. + + + + See Object.ToString() + + + + + See Object.GetHashCode() + + + + + Compares two values for equality. + + The to compare to. + + + + Compares two values for equality. + + The to compare to. + + + + Compares two values for equality + + The first to compare. + The second to compare. + + + + Compares two values for non-equality + + The first to compare. + The second to compare. + + + + Number of messages sent since the last heartbeat was processed. + + + + + Whether the pipe writer is currently active. + + + + + Total number of backlog messages that are in the retry backlog. + + + + + Status of the currently processing backlog, if any. + + + + + Status for the underlying . + + + + + The default bridge stats, notable *not* the same as default since initializers don't run. + + + + + This writes a message to the output stream + + The phsyical connection to write to. + The message to be written. + + + + For testing only + + + + Returns a string that represents the current object. + A string that represents the current object. + + + + Number of messages sent outbound, but we don't yet have a response for. + + + + + Bytes available on the socket, not yet read into the pipe. + + + + + Bytes read from the socket, pending in the reader pipe. + + + + + Bytes in the writer pipe, waiting to be written to the socket. + + + + + The inbound pipe reader status. + + + + + The outbound pipe writer status. + + + + + The default connection stats, notable *not* the same as default since initializers don't run. + + + + + The zeroed connection stats, which we want to display as zero for default exception cases. + + + + + A profiled command against a redis instance. + + TimeSpans returned by this interface use a high precision timer if possible. + DateTimes returned by this interface are no more precise than DateTime.UtcNow. + + + + + + The endpoint this command was sent to. + + + + + The Db this command was sent to. + + + + + The name of this command. + + + + + The CommandFlags the command was submitted with. + + + + + + When this command was *created*, will be approximately + when the paired method of StackExchange.Redis was called but + before that method returned. + + Note that the resolution of the returned DateTime is limited by DateTime.UtcNow. + + + + + How long this command waited to be added to the queue of pending + redis commands. A large TimeSpan indicates serious contention for + the pending queue. + + + + + How long this command spent in the pending queue before being sent to redis. + A large TimeSpan can indicate a large number of pending events, large pending events, + or network issues. + + + + + How long before Redis responded to this command and it's response could be handled after it was sent. + A large TimeSpan can indicate a large response body, an overtaxed redis instance, or network issues. + + + + + How long between Redis responding to this command and awaiting consumers being notified. + + + + + How long it took this redis command to be processed, from creation to deserializing the final response. + Note that this TimeSpan *does not* include time spent awaiting a Task in consumer code. + + + + + + If a command has to be resent due to an ASK or MOVED response from redis (in a cluster configuration), + the second sending of the command will have this property set to the original IProfiledCommand. + + This can only be set if redis is configured as a cluster. + + + + + If RetransmissionOf is not null, this property will be set to either Ask or Moved to indicate + what sort of response triggered the retransmission. + + This can be useful for determining the root cause of extra commands. + + + + + A collection of IProfiledCommands. + This is a very light weight data structure, only supporting enumeration. + + While it implements IEnumerable, it there are fewer allocations if one uses + it's explicit GetEnumerator() method. Using `foreach` does this automatically. + + This type is not threadsafe. + + + + + + Implements IEnumerator for ProfiledCommandEnumerable. + This implementation is comparable to List.Enumerator and Dictionary.Enumerator, + and is provided to reduce allocations in the common (ie. foreach) case. + + This type is not threadsafe. + + + + + The current element. + + + + + Advances the enumeration, returning true if there is a new element to consume and false + if enumeration is complete. + + + + + Resets the enumeration. + + + + + Disposes the enumeration. + subsequent attempts to enumerate results in undefined behavior. + + + + + Returns the number of commands captured in this snapshot + + + + + Returns the number of commands captured in this snapshot that match a condition + + The predicate to match. + + + + Returns the captured commands as an array + + + + + Returns the captured commands as a list + + + + + + Returns an implementor of IEnumerator that, provided it isn't accessed + though an interface, avoids allocations. + + `foreach` will automatically use this method. + + + + + Lightweight profiling session that can be optionally registered (via ConnectionMultiplexer.RegisterProfiler) to track messages. + + + + + Caller-defined state object. + + + + + Create a new profiling session, optionally including a caller-defined state object. + + The state object to use for this session. + + + + Reset the session and yield the commands that were captured for enumeration; if additional commands + are added, they can be retrieved via additional calls to FinishProfiling. + + + + + Represents a pub/sub channel name + + + + + Indicates whether the channel-name is either null or a zero-length value + + + + + Create a new redis channel from a buffer, explicitly controlling the pattern mode + + The name of the channel to create. + The mode for name matching. + + + + Create a new redis channel from a string, explicitly controlling the pattern mode + + The string name of the channel to create. + The mode for name matching. + + + + Indicate whether two channel names are not equal + + The first to compare. + The second to compare. + + + + Indicate whether two channel names are not equal + + The first to compare. + The second to compare. + + + + Indicate whether two channel names are not equal + + The first to compare. + The second to compare. + + + + Indicate whether two channel names are not equal + + The first to compare. + The second to compare. + + + + Indicate whether two channel names are not equal + + The first to compare. + The second to compare. + + + + Indicate whether two channel names are equal + + The first to compare. + The second to compare. + + + + Indicate whether two channel names are equal + + The first to compare. + The second to compare. + + + + Indicate whether two channel names are equal + + The first to compare. + The second to compare. + + + + Indicate whether two channel names are equal + + The first to compare. + The second to compare. + + + + Indicate whether two channel names are equal + + The first to compare. + The second to compare. + + + + See Object.Equals + + The to compare to. + + + + Indicate whether two channel names are equal + + The to compare to. + + + + See Object.GetHashCode + + + + + Obtains a string representation of the channel name + + + + + The matching pattern for this channel + + + + + Will be treated as a pattern if it includes * + + + + + Never a pattern + + + + + Always a pattern + + + + + Create a channel name from a . + + The string to get a channel from. + + + + Create a channel name from a . + + The byte array to get a channel from. + + + + Obtain the channel name as a . + + The channel to get a byte[] from. + + + + Obtain the channel name as a . + + The channel to get a string from. + + + + Notification of errors from the redis server + + + + + This constructor is only for testing purposes. + + The source of the event. + Redis endpoint. + Error message. + + + + The origin of the message + + + + + The message from the server + + + + + Provides basic information about the features available on a particular version of Redis + + + + + Create a new RedisFeatures instance for the given version + + The version of redis to base the feature set on. + + + + Does BITOP / BITCOUNT exist? + + + + + Is CLIENT SETNAME available? + + + + + Does EXEC support EXECABORT if there are errors? + + + + + Can EXPIRE be used to set expiration on a key that is already volatile (i.e. has an expiration)? + + + + + Is GETDEL available? + + + + + Is HSTRLEN available? + + + + + Does HDEL support varadic usage? + + + + + Does INCRBYFLOAT / HINCRBYFLOAT exist? + + + + + Does INFO support sections? + + + + + Is LINSERT available? + + + + + Is MEMORY available? + + + + + Indicates whether PEXPIRE and PTTL are supported + + + + + Is MODULE available? + + + + + Does SRANDMEMBER support "count"? + + + + + Is the PERSIST operation supported? + + + + + Is RPUSHX and LPUSHX available? + + + + + Are cursor-based scans available? + + + + + Does EVAL / EVALSHA / etc exist? + + + + + Does SET have the EX|PX|NX|XX extensions? + + + + + Does SADD support varadic usage? + + + + + Is ZPOPMAX and ZPOPMIN available? + + + + + Are Redis Streams available? + + + + + Is STRLEN available? + + + + + Is SETRANGE available? + + + + + Is SWAPDB available? + + + + + Does TIME exist? + + + + + Does UNLINK exist? + + + + + Are Lua changes to the calling database transparent to the calling client? + + + + + Is PFCOUNT supported on replicas? + + + + + Is PFCOUNT supported on replicas? + + + + + Are the GEO commands available? + + + + + Can PING be used on a subscription connection? + + + + + Does SetPop support popping multiple items? + + + + + The Redis version of the server + + + + + Are the Touch command available? + + + + + Does the server prefer 'replica' terminology - 'REPLICAOF', etc? + + + + + Do list-push commands support multiple arguments? + + + + + Create a string representation of the available features + + + + Returns the hash code for this instance. + A 32-bit signed integer that is the hash code for this instance. + + + Indicates whether this instance and a specified object are equal. + true if and this instance are the same type and represent the same value; otherwise, false. + The object to compare with the current instance. + + + + Checks if 2 RedisFeatures are .Equal() + + + + + Checks if 2 RedisFeatures are not .Equal() + + + + + Represents a key that can be stored in redis + + + + + Creates a from a string. + + + + + Indicate whether two keys are not equal + + The first to compare. + The second to compare. + + + + Indicate whether two keys are not equal + + The first to compare. + The second to compare. + + + + Indicate whether two keys are not equal + + The first to compare. + The second to compare. + + + + Indicate whether two keys are not equal + + The first to compare. + The second to compare. + + + + Indicate whether two keys are not equal + + The first to compare. + The second to compare. + + + + Indicate whether two keys are equal + + The first to compare. + The second to compare. + + + + Indicate whether two keys are equal + + The first to compare. + The second to compare. + + + + Indicate whether two keys are equal + + The first to compare. + The second to compare. + + + + Indicate whether two keys are equal + + The first to compare. + The second to compare. + + + + Indicate whether two keys are equal + + The first to compare. + The second to compare. + + + + See Object.Equals + + The to compare to. + + + + Indicate whether two keys are equal + + The to compare to. + + + + See Object.GetHashCode + + + + + Obtains a string representation of the key + + + + + Create a from a . + + The string to get a key from. + + + + Create a from a . + + The byte array to get a key from. + + + + Obtain the as a . + + The key to get a byte array for. + + + + Obtain the key as a . + + The key to get a string for. + + + + Concatenate two keys + + The first to add. + The second to add. + + + + Prepends p to this RedisKey, returning a new RedisKey. + + Avoids some allocations if possible, repeated Prepend/Appends make + it less possible. + + + The prefix to prepend. + + + + Appends p to this RedisKey, returning a new RedisKey. + + Avoids some allocations if possible, repeated Prepend/Appends make + it less possible. + + + The suffix to append. + + + + Represents a general-purpose result from redis, that may be cast into various anticipated types + + + + + Create a new RedisResult representing a single value. + + The to create a result from. + The type of result being represented + new . + + + + Create a new RedisResult representing an array of values. + + The s to create a result from. + new . + + + + Create a new RedisResult representing an array of values. + + The s to create a result from. + new . + + + + An empty array result + + + + + A null array result + + + + + Indicate the type of result that was received from redis + + + + + Indicates whether this result was a null result + + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets the result as an . + + The result to convert to a . + + + + Interprets the result as an . + + The result to convert to a . + + + + Interprets the result as an . + + The result to convert to a . + + + + Interprets the result as a + + The result to convert to a . + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets the result as a . + + The result to convert to a . + + + + Interprets a multi-bulk result with successive key/name values as a dictionary keyed by name + + The key comparator to use, or by default + + + + Create a from a key. + + The to create a from. + + + + Create a from a channel. + + The to create a from. + + + + For testing only + + + + + Describes a Redis Stream with an associated array of entries. + + + + + The key for the stream. + + + + + An arry of entries contained within the stream. + + + + + Represents values that can be stored in redis + + + + + Creates a from a string. + + + + + Obtain this value as an object - to be used alongside Unbox + + + + + Parse this object as a value - to be used alongside Box. + + The value to unbox. + + + + Represents the string "" + + + + + A null value + + + + + Indicates whether the value is a primitive integer (signed or unsigned) + + + + + Indicates whether the value should be considered a null value + + + + + Indicates whether the value is either null or a zero-length value + + + + + Indicates whether the value is greater than zero-length or has an integer value + + + + + Indicates whether two RedisValue values are equivalent + + The first to compare. + The second to compare. + + + + Indicates whether two RedisValue values are equivalent + + The first to compare. + The second to compare. + + + + See Object.Equals() + + The other to compare. + + + + Indicates whether two RedisValue values are equivalent + + The to compare to. + + + + See Object.GetHashCode() + + + + + Returns a string representation of the value + + + + + Get the size of this value in bytes + + + + + Compare against a RedisValue for relative order + + The other to compare. + + + + Creates a new from an . + + The to convert to a . + + + + Creates a new from an . + + The to convert to a . + + + + Creates a new from an . + + The to convert to a . + + + + Creates a new from an . + + The to convert to a . + + + + Creates a new from an . + + The to convert to a . + + + + Creates a new from an . + + The to convert to a . + + + + Creates a new from an . + + The to convert to a . + + + + Creates a new from an . + + The to convert to a . + + + + Creates a new from an . + + The to convert to a . + + + + Creates a new from an . + + The to convert to a . + + + + Creates a new from a . + + The to convert to a . + + + + Creates a new from a . + + The to convert to a . + + + + Creates a new from an . + + The to convert to a . + + + + Creates a new from an . + + The to convert to a . + + + + Creates a new from an . + + The to convert to a . + + + + Creates a new from an . + + The to convert to a . + + + + Converts a to a . + + The to convert. + + + + Converts a to a . + + The to convert. + + + + Converts a to a . + + The to convert. + + + + Converts a to a . + + The to convert. + + + + Converts a to a . + + The to convert. + + + + Converts a to a . + + The to convert. + + + + Converts a to a . + + The to convert. + + + + Converts a to a . + + The to convert. + + + + Converts the to a . + + The to convert. + + + + Converts the to a . + + The to convert. + + + + Converts the to a . + + The to convert. + + + + Converts the to a . + + The to convert. + + + + Converts the to a . + + The to convert. + + + + Converts the to a . + + The to convert. + + + + Converts the to a . + + The to convert. + + + + Converts the to a . + + The to convert. + + + + Converts a to a . + + The to convert. + + + + Converts a to a . + + The to convert. + + + + Converts a to a ReadOnlyMemory + + The to convert. + + + + Attempt to reduce to canonical terms ahead of time; parses integers, floats, etc + Note: we don't use this aggressively ahead of time, a: because of extra CPU, + but more importantly b: because it can change values - for example, if they start + with "123.000", it should **stay** as "123.000", not become 123L; this could be + a hash key or similar - we don't want to break it; RedisConnection uses + the storage type, not the "does it look like a long?" - for this reason + + + + + Convert to a signed long if possible, returning true. + Returns false otherwise. + + The value, if conversion was possible. + + + + Convert to a int if possible, returning true. + Returns false otherwise. + + The value, if conversion was possible. + + + + Convert to a double if possible, returning true. + Returns false otherwise. + + The value, if conversion was possible. + + + + Create a RedisValue from a MemoryStream; it will *attempt* to use the internal buffer + directly, but if this isn't possibly it will fallback to ToArray + + The to create a value from. + + + + Indicates whether the current value has the supplied value as a prefix. + + The to check. + + + + Describes a value/expiry pair + + + + + Creates a from a and a + + + + + The expiry of this record + + + + + The value of this record + + + + + Result of the ROLE command. Values depend on the role: master, replica, or sentinel. + + https://redis.io/commands/role + + + + One of "master", "slave" (aka replica), or "sentinel". + + + + + + + + Result of the ROLE command for a master node. + + https://redis.io/commands/role#master-output + + + + The replication offset. To be consumed by replica nodes. + + + + + Connected replica nodes. + + + + + A connected replica node. + + + + + The IP address of this replica node. + + + + + The port number of this replica node. + + + + + The last replication offset acked by this replica node. + + + + + Result of the ROLE command for a replica node. + + https://redis.io/commands/role#output-of-the-command-on-replicas + + + + The IP address of the master node for this replica. + + + + + The port number of the master node for this replica. + + + + + This replica's replication state. + + + + + The last replication offset received by this replica. + + + + + Result of the ROLE command for a sentinel node. + + https://redis.io/commands/role#sentinel-output + + + + Master names monitored by this sentinel node. + + + + + An unexpected result of the ROLE command. + + + + + Turns a script with @namedParameters into a LuaScript that can be executed + against a given IDatabase(Async) object + + The script to prepare. + + + + Determines whether or not the given type can be used to provide parameters for the given LuaScript. + + The type of the parameter. + The script to match against. + The first missing member, if any. + The first type mismatched member, if any. + + + + Creates a Func that extracts parameters from the given type for use by a LuaScript. + + Members that are RedisKey's get extracted to be passed in as keys to redis; all members that + appear in the script get extracted as RedisValue arguments to be sent up as args. + + + We send all values as arguments so we don't have to prepare the same script for different parameter + types. + + + The created Func takes a RedisKey, which will be prefixed to all keys (and arguments of type RedisKey) for + keyspace isolation. + + + The type to extract for. + The script to extract for. + + + + Illustrates the queues associates with this server + + + + + Creates a instance for an . + + The to create counters for. + + + + The endpoint to which this data relates (this can be null if the data represents all servers) + + + + + Counters associated with the interactive (non pub-sub) connection + + + + + Counters associated with other ambient activity + + + + + Counters associated with the subscription (pub-sub) connection + + + + + Indicates the total number of outstanding items against this server + + + + + See Object.ToString(); + + + + + Awaitable state seeing if this endpoint is connected. + + + + + For testing only + + + + + Computes the hash-slot that would be used by the given key + + The to determine a slot ID for. + A SocketManager monitors multiple sockets for availability of data; this is done using the Socket.Select API and a dedicated reader-thread, which allows for fast responses - even when the system is under ambient load. - - - - - Creates a new (optionally named) SocketManager instance - - - - - Creates a new SocketManager instance + even when the system is under ambient load. @@ -6514,11 +10707,79 @@ Gets the name of this SocketManager instance + + + Creates a new instance + + The name for this . + + + + Creates a new instance + + The name for this . + Whether this should use high priority sockets. + + + + Creates a new (optionally named) instance + + The name for this . + the number of dedicated workers for this . + Whether this should use high priority sockets. + + + + Additional options for configuring the socket manager + + + + + No additional options + + + + + Whether the should use high priority sockets. + + + + + Use the regular thread-pool for all scheduling + + + + + Creates a new (optionally named) instance + + The name for this . + the number of dedicated workers for this . + + + + + Default / shared socket manager using a dedicated thread-pool + + + + + Shared socket manager using the main thread-pool + + + + Returns a string that represents the current object. + A string that represents the current object. + Releases all resources associated with this instance + + + Releases *appropriate* resources associated with this instance + + Describes a sorted-set element with the corresponding value @@ -6526,8 +10787,10 @@ - Initializes a SortedSetEntry value + Initializes a value. + The to get an entry for. + The redis score for . @@ -6553,11 +10816,13 @@ Converts to a key/value pair + The to get a for. Converts from a key/value pair + The to get a for. @@ -6573,88 +10838,302 @@ Compares two values for equality + The to compare to. Compares two values for equality + The to compare to. Compares two values by score + The to compare to. Compares two values by score + The to compare to. Compares two values for equality + The first to compare. + The second to compare. Compares two values for non-equality + The first to compare. + The second to compare. - + - Specifies how to compare elements for sorting + Constants representing values used in Redis Stream commands. - + - Elements are interpreted as a double-precision floating point number and sorted numerically + The "~" value used with the MAXLEN option. - + - Elements are sorted using their alphabetic form (Redis is UTF-8 aware as long as the !LC_COLLATE environment variable is set at the server) + The "*" value used with the XADD command. - + - We want to prevent callers hijacking the reader thread; this is a bit nasty, but works; - see http://stackoverflow.com/a/22588431/23354 for more information; a huge - thanks to Eli Arbel for spotting this (even though it is pure evil; it is *my kind of evil*) + The "$" value used in the XGROUP command. Indicates reading only new messages from the stream. - + - Indicates whether the specified task will not hijack threads when results are set + The "0" value used in the XGROUP command. Indicates reading all messages from the stream. - + + + The "-" value used in the XRANGE, XREAD, and XREADGROUP commands. Indicates the minimum message ID from the stream. + + + + + The "+" value used in the XRANGE, XREAD, and XREADGROUP commands. Indicates the maximum message ID from the stream. + + + + + The ">" value used in the XREADGROUP command. Use this to read messages that have not been delivered to a consumer group. + + + + + Describes a consumer off a Redis Stream. + + + + + The name of the consumer. + + + + + The number of messages that have been delivered by not yet acknowledged by the consumer. + + + + + Describes a consumer within a consumer group, retrieved using the XINFO CONSUMERS command. + + + + + The name of the consumer. + + + + + The number of pending messages for the consumer. A pending message is one that has been + received by the consumer but not yet acknowledged. + + + + + The idle time, if any, for the consumer. + + + + + Describes an entry contained in a Redis Stream. + + + + + A null stream entry. + + + + + The ID assigned to the message. + + + + + The values contained within the message. + + + + + Search for a specific field by name, returning the value + + + + + Indicates that the Redis Stream Entry is null. + + + + + Describes a consumer group retrieved using the XINFO GROUPS command. + + + + + The name of the consumer group. + + + + + The number of consumers within the consumer group. + + + + + The total number of pending messages for the consumer group. A pending message is one that has been + received by a consumer but not yet acknowledged. + + + + + The Id of the last message delivered to the group + + + + + Describes stream information retrieved using the XINFO STREAM command. + + + + + The number of entries in the stream. + + + + + The number of radix tree keys in the stream. + + + + + The number of radix tree nodes in the stream. + + + + + The number of consumers groups in the stream. + + + + + The first entry in the stream. + + + + + The last entry in the stream. + + + + + The last generated id + + + + + Describes basic information about pending messages for a consumer group. + + + + + The number of pending messages. A pending message is a message that has been consumed but not yet acknowledged. + + + + + The lowest message ID in the set of pending messages. + + + + + The highest message ID in the set of pending messages. + + + + + An array of consumers within the consumer group that have pending messages. + + + + + Describes properties of a pending message. A pending message is one that has + been received by a consumer but has not yet been acknowledged. + + + + + The ID of the pending message. + + + + + The consumer that received the pending message. + + + + + The time that has passed since the message was last delivered to a consumer. + + + + + The number of times the message has been delivered to a consumer. + + + + + Describes a pair consisting of the Stream Key and the from which to begin reading a stream. + + + + + Read from the beginning of a stream. + + + + + Read new messages. + + + + + Initializes a value. + + The key for the stream. + The position from which to begin reading the stream. + + + + The stream key. + + + + + The offset at which to begin reading the stream. + + + Create a new TaskCompletion source - - - - Create a new TaskCompletionSource that will not allow result-setting threads to be hijacked - - - - - Indicates when this operation should be performed (only some variations are legal in a given context) - - - - - The operation should occur whether or not there is an existing value - - - - - The operation should only occur when there is an existing value - - - - - The operation should only occur when there is not an existing value - + The type for the created . + The state for the created . + The options to apply to the task diff --git a/ScheMe-SP/bin/Web.config b/ScheMe-SP/bin/Web.config index 0e796b7..34e09d8 100644 --- a/ScheMe-SP/bin/Web.config +++ b/ScheMe-SP/bin/Web.config @@ -88,7 +88,7 @@ - + @@ -181,7 +181,7 @@ - + @@ -211,6 +211,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ScheMe-SP/libmongocrypt.dylib b/ScheMe-SP/libmongocrypt.dylib new file mode 100644 index 0000000..3f4518a Binary files /dev/null and b/ScheMe-SP/libmongocrypt.dylib differ diff --git a/ScheMe-SP/libmongocrypt.so b/ScheMe-SP/libmongocrypt.so new file mode 100644 index 0000000..6cc0ed1 Binary files /dev/null and b/ScheMe-SP/libmongocrypt.so differ diff --git a/ScheMe-SP/libsnappy64.dylib b/ScheMe-SP/libsnappy64.dylib new file mode 100644 index 0000000..bbce3c2 Binary files /dev/null and b/ScheMe-SP/libsnappy64.dylib differ diff --git a/ScheMe-SP/libsnappy64.so b/ScheMe-SP/libsnappy64.so new file mode 100644 index 0000000..584bedf Binary files /dev/null and b/ScheMe-SP/libsnappy64.so differ diff --git a/ScheMe-SP/libzstd.dll b/ScheMe-SP/libzstd.dll new file mode 100644 index 0000000..e669123 Binary files /dev/null and b/ScheMe-SP/libzstd.dll differ diff --git a/ScheMe-SP/libzstd.dylib b/ScheMe-SP/libzstd.dylib new file mode 100644 index 0000000..5400d76 Binary files /dev/null and b/ScheMe-SP/libzstd.dylib differ diff --git a/ScheMe-SP/libzstd.so b/ScheMe-SP/libzstd.so new file mode 100644 index 0000000..8309c49 Binary files /dev/null and b/ScheMe-SP/libzstd.so differ diff --git a/ScheMe-SP/mongocrypt.dll b/ScheMe-SP/mongocrypt.dll new file mode 100644 index 0000000..00ab602 Binary files /dev/null and b/ScheMe-SP/mongocrypt.dll differ diff --git a/ScheMe-SP/packages.config b/ScheMe-SP/packages.config index b866e16..a7d37e0 100644 --- a/ScheMe-SP/packages.config +++ b/ScheMe-SP/packages.config @@ -1,8 +1,12 @@  + + + + @@ -12,19 +16,50 @@ + + + + + + - - + + + + + - + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ScheMe-SP/snappy32.dll b/ScheMe-SP/snappy32.dll new file mode 100644 index 0000000..afc82ca Binary files /dev/null and b/ScheMe-SP/snappy32.dll differ diff --git a/ScheMe-SP/snappy64.dll b/ScheMe-SP/snappy64.dll new file mode 100644 index 0000000..36cd5fe Binary files /dev/null and b/ScheMe-SP/snappy64.dll differ diff --git a/ScheMe_Data/App.config b/ScheMe_Data/App.config index 638c93a..e62549a 100644 --- a/ScheMe_Data/App.config +++ b/ScheMe_Data/App.config @@ -1,4 +1,4 @@ - + @@ -7,10 +7,46 @@ - - + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ScheMe_Data/App_Readme/README_SteamWare.txt b/ScheMe_Data/App_Readme/README_SteamWare.txt new file mode 100644 index 0000000..5626502 --- /dev/null +++ b/ScheMe_Data/App_Readme/README_SteamWare.txt @@ -0,0 +1,12 @@ +--------------------------------------------------------------- +------- SteamWare SDK ------- +--------------------------------------------------------------- + +Libreria di utility base di SteamWare. + +Le dipendenze inserite sono necessarie al funzionamento dell'SDK. + +Sono inclusi a titolo di esempio vari files di conf: + * example-NLog.config + +Attenzione a configurare correttamente il file NLog.xml includendo il rule per la classe, vedere ad esempio il file example-NLog.config allegato. \ No newline at end of file diff --git a/ScheMe_Data/App_Readme/SteamWare_demo/example-NLog.config b/ScheMe_Data/App_Readme/SteamWare_demo/example-NLog.config new file mode 100644 index 0000000..3461e58 --- /dev/null +++ b/ScheMe_Data/App_Readme/SteamWare_demo/example-NLog.config @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ScheMe_Data/App_Readme/SteamWare_demo/example-app.config b/ScheMe_Data/App_Readme/SteamWare_demo/example-app.config new file mode 100644 index 0000000..fb42165 --- /dev/null +++ b/ScheMe_Data/App_Readme/SteamWare_demo/example-app.config @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/ScheMe_Data/App_Readme/SteamWare_demo/example-config-table.txt b/ScheMe_Data/App_Readme/SteamWare_demo/example-config-table.txt new file mode 100644 index 0000000..dd0ab8e --- /dev/null +++ b/ScheMe_Data/App_Readme/SteamWare_demo/example-config-table.txt @@ -0,0 +1,30 @@ +# chiave valore valoreStd note +_adminEmail samuele@steamware.net,info@steamware.net samuele@steamware.net,info@steamware.net info@steamware.net +_allowForceUser true true abilita login forzato +_commonPages menu menu pagina comune +_emailPwd drmfsls16 drmfsls16 drmfsls16 +_emailUser steamwarebot@gmail.com steamwarebot@gmail.com steamwarebot@gmail.com +_enableSSL true true true +_fromEmail webmaster@admodelling.org webmaster@admodelling.org email mittente eventuali msg +_righeDataGrid 30 30 Num righe datagrid std +_righeDataGridAnagr 20 20 Num righe datagrid anagrafiche +_righeDataGridLong 30 30 Num righe datagrid long +_righeDataGridMed 15 15 Num righe datagrid med +_righeDataGridShort 10 10 Num righe datagrid short +_smtpCli smtp.gmail.com smtp.gmail.com smtp.gmail.com +_useAIMSmtp false false impiego client posta elettronica alternativo +_useAuthSmtp true true true +AuthCookieName admodellingAuth admodellingAuth Cookie applicativo +autoConfCmd true true Conferma automatica comandi barcode +baseUrl http://site_name http://iis02/site_name URL base del sito +cacheValSec 60 60 Validità cache dati in gestore Barcode +cookieDayExp 365 365 Periodo validità cookie +cookieUsed admodellingAuth admodellingAuth,CTrack_CodOpr,CTrack_CodPost Elenco dei cookie impiegati +enableCookie true true Abilitazione uso cookie +enableLogOut true false Abilita button logout COMPLETO in alto a sx +enablePlain true true Abilitazione decode plain +maxAuth 1000 1000 num auth minimo per NON consumare tokens +serializeSession true true Serializzazione valori in sessione (REDIS) +SiteName iis02/site_name iis02/site_name Nome sito +enableDumpDiag false false abilitazione dumb diagnostico x eccezioni di default +doShrinkFolder true true Imposta compressione area LOGS \ No newline at end of file diff --git a/ScheMe_Data/App_Readme/SteamWare_demo/example-favicon.ico b/ScheMe_Data/App_Readme/SteamWare_demo/example-favicon.ico new file mode 100644 index 0000000..4f0e0ad Binary files /dev/null and b/ScheMe_Data/App_Readme/SteamWare_demo/example-favicon.ico differ diff --git a/ScheMe_Data/Core/Compression/Snappy/lib/linux/libsnappy64.so b/ScheMe_Data/Core/Compression/Snappy/lib/linux/libsnappy64.so new file mode 100644 index 0000000..584bedf Binary files /dev/null and b/ScheMe_Data/Core/Compression/Snappy/lib/linux/libsnappy64.so differ diff --git a/ScheMe_Data/Core/Compression/Snappy/lib/osx/libsnappy64.dylib b/ScheMe_Data/Core/Compression/Snappy/lib/osx/libsnappy64.dylib new file mode 100644 index 0000000..bbce3c2 Binary files /dev/null and b/ScheMe_Data/Core/Compression/Snappy/lib/osx/libsnappy64.dylib differ diff --git a/ScheMe_Data/Core/Compression/Snappy/lib/win/snappy32.dll b/ScheMe_Data/Core/Compression/Snappy/lib/win/snappy32.dll new file mode 100644 index 0000000..afc82ca Binary files /dev/null and b/ScheMe_Data/Core/Compression/Snappy/lib/win/snappy32.dll differ diff --git a/ScheMe_Data/Core/Compression/Snappy/lib/win/snappy64.dll b/ScheMe_Data/Core/Compression/Snappy/lib/win/snappy64.dll new file mode 100644 index 0000000..36cd5fe Binary files /dev/null and b/ScheMe_Data/Core/Compression/Snappy/lib/win/snappy64.dll differ diff --git a/ScheMe_Data/Core/Compression/Zstandard/lib/linux/libzstd.so b/ScheMe_Data/Core/Compression/Zstandard/lib/linux/libzstd.so new file mode 100644 index 0000000..8309c49 Binary files /dev/null and b/ScheMe_Data/Core/Compression/Zstandard/lib/linux/libzstd.so differ diff --git a/ScheMe_Data/Core/Compression/Zstandard/lib/osx/libzstd.dylib b/ScheMe_Data/Core/Compression/Zstandard/lib/osx/libzstd.dylib new file mode 100644 index 0000000..5400d76 Binary files /dev/null and b/ScheMe_Data/Core/Compression/Zstandard/lib/osx/libzstd.dylib differ diff --git a/ScheMe_Data/Core/Compression/Zstandard/lib/win/libzstd.dll b/ScheMe_Data/Core/Compression/Zstandard/lib/win/libzstd.dll new file mode 100644 index 0000000..e669123 Binary files /dev/null and b/ScheMe_Data/Core/Compression/Zstandard/lib/win/libzstd.dll differ diff --git a/ScheMe_Data/ScheMe_Data.csproj b/ScheMe_Data/ScheMe_Data.csproj index dbee4cd..2d77dc4 100644 --- a/ScheMe_Data/ScheMe_Data.csproj +++ b/ScheMe_Data/ScheMe_Data.csproj @@ -12,6 +12,8 @@ v4.6.2 512 + + AnyCPU @@ -45,8 +47,141 @@ MinimumRecommendedRules.ruleset + + ..\packages\AIM.1.0.3\lib\AegisImplicitMail.dll + + + ..\packages\AjaxControlToolkit.20.1.0\lib\net40\AjaxControlToolkit.dll + + + ..\packages\Crc32C.NET.1.0.5.0\lib\net20\Crc32C.NET.dll + + + ..\packages\DnsClient.1.6.0\lib\net45\DnsClient.dll + + + ..\packages\SharpZipLib.1.3.3\lib\net45\ICSharpCode.SharpZipLib.dll + + + ..\packages\Microsoft.Bcl.AsyncInterfaces.6.0.0\lib\net461\Microsoft.Bcl.AsyncInterfaces.dll + + + ..\packages\MongoDB.Bson.2.14.1\lib\netstandard2.0\MongoDB.Bson.dll + + + ..\packages\MongoDB.Driver.2.14.1\lib\netstandard2.0\MongoDB.Driver.dll + + + ..\packages\MongoDB.Driver.Core.2.14.1\lib\netstandard2.0\MongoDB.Driver.Core.dll + + + ..\packages\MongoDB.Libmongocrypt.1.3.0\lib\netstandard2.0\MongoDB.Libmongocrypt.dll + + + ..\packages\Newtonsoft.Json.13.0.1\lib\net45\Newtonsoft.Json.dll + + + ..\packages\NLog.4.7.13\lib\net45\NLog.dll + + + ..\packages\PDFsharp.1.50.5147\lib\net20\PdfSharp.dll + + + ..\packages\PDFsharp.1.50.5147\lib\net20\PdfSharp.Charting.dll + + + ..\packages\Pipelines.Sockets.Unofficial.2.2.2\lib\net461\Pipelines.Sockets.Unofficial.dll + + + ..\packages\SharpCompress.0.30.1\lib\net461\SharpCompress.dll + + + ..\packages\Snappy.NET.1.1.1.8\lib\net45\Snappy.NET.dll + + + ..\packages\StackExchange.Redis.2.2.88\lib\net461\StackExchange.Redis.dll + + + ..\packages\SteamWare.5.2.2204.911\lib\net462\SteamWare.dll + + + ..\packages\SteamWare.Logger.5.1.2109.1716\lib\net462\SteamWare.Logger.dll + + + ..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll + + + + ..\packages\System.Diagnostics.PerformanceCounter.6.0.0\lib\net461\System.Diagnostics.PerformanceCounter.dll + + + + ..\packages\System.IO.Compression.4.3.0\lib\net46\System.IO.Compression.dll + True + True + + + ..\packages\System.IO.Pipelines.6.0.2\lib\net461\System.IO.Pipelines.dll + + + ..\packages\System.Memory.4.5.4\lib\net461\System.Memory.dll + + + ..\packages\System.Net.Http.4.3.4\lib\net46\System.Net.Http.dll + True + True + + + + ..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll + + + ..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll + + + ..\packages\System.Runtime.InteropServices.RuntimeInformation.4.3.0\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll + True + True + + + + + ..\packages\System.Security.Cryptography.Algorithms.4.3.1\lib\net461\System.Security.Cryptography.Algorithms.dll + True + True + + + ..\packages\System.Security.Cryptography.Encoding.4.3.0\lib\net46\System.Security.Cryptography.Encoding.dll + True + True + + + ..\packages\System.Security.Cryptography.Pkcs.6.0.0\lib\net461\System.Security.Cryptography.Pkcs.dll + + + ..\packages\System.Security.Cryptography.Primitives.4.3.0\lib\net46\System.Security.Cryptography.Primitives.dll + True + True + + + ..\packages\System.Security.Cryptography.X509Certificates.4.3.2\lib\net461\System.Security.Cryptography.X509Certificates.dll + True + True + + + + ..\packages\System.Text.Encoding.CodePages.6.0.0\lib\net461\System.Text.Encoding.CodePages.dll + + + ..\packages\System.Threading.Channels.6.0.0\lib\net461\System.Threading.Channels.dll + + + ..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll + + + @@ -80,6 +215,12 @@ + + + + + + DS_Applicazione.xsd @@ -102,18 +243,42 @@ DS_Utility.xsd + + + + + + + SettingsSingleFileGenerator Settings.Designer.cs - - {2872dcfe-8b46-43b2-baa0-842a816a2dd5} - SteamWare - + + + + + + + + + + + + + + Questo progetto fa riferimento a uno o più pacchetti NuGet che non sono presenti in questo computer. Usare lo strumento di ripristino dei pacchetti NuGet per scaricarli. Per altre informazioni, vedere http://go.microsoft.com/fwlink/?LinkID=322105. Il file mancante è {0}. + + + + + + + - - + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ScheMe_Data/libmongocrypt.dylib b/ScheMe_Data/libmongocrypt.dylib new file mode 100644 index 0000000..3f4518a Binary files /dev/null and b/ScheMe_Data/libmongocrypt.dylib differ diff --git a/ScheMe_Data/libmongocrypt.so b/ScheMe_Data/libmongocrypt.so new file mode 100644 index 0000000..6cc0ed1 Binary files /dev/null and b/ScheMe_Data/libmongocrypt.so differ diff --git a/ScheMe_Data/libsnappy64.dylib b/ScheMe_Data/libsnappy64.dylib new file mode 100644 index 0000000..bbce3c2 Binary files /dev/null and b/ScheMe_Data/libsnappy64.dylib differ diff --git a/ScheMe_Data/libsnappy64.so b/ScheMe_Data/libsnappy64.so new file mode 100644 index 0000000..584bedf Binary files /dev/null and b/ScheMe_Data/libsnappy64.so differ diff --git a/ScheMe_Data/libzstd.dll b/ScheMe_Data/libzstd.dll new file mode 100644 index 0000000..e669123 Binary files /dev/null and b/ScheMe_Data/libzstd.dll differ diff --git a/ScheMe_Data/libzstd.dylib b/ScheMe_Data/libzstd.dylib new file mode 100644 index 0000000..5400d76 Binary files /dev/null and b/ScheMe_Data/libzstd.dylib differ diff --git a/ScheMe_Data/libzstd.so b/ScheMe_Data/libzstd.so new file mode 100644 index 0000000..8309c49 Binary files /dev/null and b/ScheMe_Data/libzstd.so differ diff --git a/ScheMe_Data/mongocrypt.dll b/ScheMe_Data/mongocrypt.dll new file mode 100644 index 0000000..00ab602 Binary files /dev/null and b/ScheMe_Data/mongocrypt.dll differ diff --git a/ScheMe_Data/packages.config b/ScheMe_Data/packages.config new file mode 100644 index 0000000..2ec0d76 --- /dev/null +++ b/ScheMe_Data/packages.config @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ScheMe_Data/snappy32.dll b/ScheMe_Data/snappy32.dll new file mode 100644 index 0000000..afc82ca Binary files /dev/null and b/ScheMe_Data/snappy32.dll differ diff --git a/ScheMe_Data/snappy64.dll b/ScheMe_Data/snappy64.dll new file mode 100644 index 0000000..36cd5fe Binary files /dev/null and b/ScheMe_Data/snappy64.dll differ diff --git a/VersGen/VersGen.csproj b/VersGen/VersGen.csproj index 03793ce..286ca32 100644 --- a/VersGen/VersGen.csproj +++ b/VersGen/VersGen.csproj @@ -9,7 +9,7 @@ Properties VersGen VersGen - v4.5.2 + v4.6.2 512