Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Jan 30 09:25
    haf commented #351
  • Jan 30 09:24
    haf edited #351
  • Jan 30 09:24
    haf edited #351
  • Jan 29 23:09
    rtkelly13 starred logary/logary
  • Jan 29 08:14

    haf on master

    Add System.Data.Odbc to depende… (compare)

  • Jan 29 02:25
    jburman starred logary/logary
  • Jan 28 11:01

    haf on master

    Correcting copy target in Docke… (compare)

  • Jan 28 11:00

    haf on master

    Remove stray extra find stanza … (compare)

  • Jan 28 10:58

    haf on master

    Let Dockerfile copy the artifac… (compare)

  • Jan 28 10:50

    haf on master

    Quicker builds with pre-downloa… Dockerfile with Rutta publish s… (compare)

  • Jan 27 13:01
    haf edited #385
  • Jan 27 12:52

    haf on master

    Test with better .dockerignore … (compare)

  • Jan 27 00:02

    haf on master

    Makefile targets (compare)

  • Jan 26 22:56

    haf on master

    Remove legacy/ folder; noone ha… Remove stray duplicate Version … Remove extra print of locales and 5 more (compare)

  • Jan 26 20:56

    haf on master

    Fix LC_ALL warning from perl (compare)

  • Jan 26 20:35

    haf on master

    Working Dockerfile build and ma… (compare)

  • Jan 26 19:13
    tallpeak starred logary/logary
  • Jan 26 19:02
    haf opened #385
  • Jan 26 18:59

    haf on master

    Add RELEASE_NOTES note and Dock… (compare)

  • Jan 26 18:20
    haf closed #383
Grégoire Lejay
@Antobiotics
(i apologize in advance if it's not the right place to ask)
i tried to add NodaTime to my paket dependencies but that didn't work. Is there something obvious that i am missing?
btrepp
@btrepp
Anyone have any experience with the WinPerfCounters metrics? I've managed to get App metrics working (awesome), but half of the system metrics return 0
Tried on server 2016 running as a service under nssm, and admin(UAC) on windows 10
Proccessor stats are all zero, along with memory
a few other system counters work, but mainly I was chasing the CPU and memory :D
Ákos Lukács
@AkosLukacs
@Antobiotics Use NodaTime less than v.2.0
@btrepp share with us if you can get it working, thanks :)
Grégoire Lejay
@Antobiotics
@AkosLukacs thanks for the tip, I will try this out
Davydov Denis
@Inkp
Hello, would Logary support netcore anytime soon? I am on the crossroad between logary and serilog. Tried using net461 version on netcoreapp2.0 but it behaves oddly.
Ghost
@ghost~57bd5b1440f3a6eec0610e8d
Hi All, I would like to volunteer improving the build process. Requiring the Ruby environment on windows is a bit of a pain. I'd like to propose the use of FAKE and PAKET
Quintus Marais
@quintusm
It seems like a good idea to try and get rid of the Ruby requirement. I have run into a versioning issue myself trying to do a build with the newest version of Ruby...
btrepp
@btrepp
I might be lost here, but it looks like logary looks for a ToValue on unknown types, like Chiron with ToJson. Does anyone know how this works?. I suspected it might've been ToValue : 'a -> Value or ToValue: 'a -> Value<string> etc but I can't seem to get it compile
btrepp
@btrepp
Ah it seems that the static inference in F# is pickier than I would imagine. Method needs to be defined a ToValue (x:_) : Value<unit>. Returning a function is not enough for the F# compiler
btrepp
@btrepp
What's the best way of timing an Alt<_>? It strikes me as maybe a Message.timeAlt is the case, but the Logger.log function doesn't really gel with the types (unless I create factory functions to ignore or set the messages)
I'm sure theres some nice functions and I'm just not finding them
Jun
@lust4life
@btrepp the previous version of WinPerfCounter has some bug when use with more than one instance. the new version has solved this. you can see the detail in logary/logary@9bcfacd , the old version use x.counter.InstanceName <- instance to change instance, this will initial the instance and the first NextValue is always zero.
Tuomas Hietanen
@Thorium
I have ideological reasons to not install any non-functional-first-programming-language-environments to my machine (aka. now it works, I don't want to break it). So one more vote for getting rid of Ruby.
Aleksander Heintz
@Alxandr
image.png
So, this is weird. I'm not finding the methods I'm expecting in Logary.Configuration
Anyone experienced this before (and how do I go about fixing it?)
btrepp
@btrepp
How do the counters work in logary 4.2.1?
I'm after figuring out how much some low-level interop is called, and having a metric like x per second would be fine rather than smashing out heaps of individual messages
btrepp
@btrepp
So I've deduced the model appears to be creating a metric and pushing values in with update, and summarizing per 'tick'
and there is a Metricconf.create method
But that takes some sort of metric constructor?. Do I have to memo this?. How would I tick values into a Counter?.
btrepp
@btrepp

So I've noticed there's been a new release of hopac (yay), but logary stable hasn't been updated in a while (okay).

Unfortunately the latest published hopac and logary don't play nice.

Unhandled Exception: System.TypeInitializationException: The type initializer for 'Program' threw an exception. ---> System.TypeInitializationException: The type initializer for '<StartupCode$Epsilon>.$Program' threw an exception. ---> System.MethodAccessException: Attempt by method 'Logary.Supervisor.create(Logary.Logger)' to access method 'Hopac.Job+Global.startIgnore<Microsoft.FSharp.Core.Unit>(Hopac.Job`1<Microsoft.FSharp.Core.Unit>)' failed.
   at Logary.Supervisor.create(Logger logger)
   at Logary.Registry.Advanced.create(LogaryConf conf)
   at Logary.Configuration.Config.RunLogary(LogaryConf conf)
   at Logary.Configuration.Config.WithLogary(String serviceName, FSharpFunc`2 fConf)
   at <StartupCode$Epsilon>.$Program..cctor()
   --- End of inner exception stack trace ---
   at Program..cctor()
   --- End of inner exception stack trace ---
   at Program.main(String[] _arg1)
Henrik Feldt
@haf
@btrepp Thanks for reporting. This is accurate. There's a doc/issue about this in the issue tracker (perhaps you)
btrepp
@btrepp
Wasn't me, think someone independently found it.
Locking to 4 logary keeps me working for now. I would like to upgrade to 5, but currently the beta tag worries me
(I'm a little wary after freyas 4 being rc for over a year)
Henrik Feldt
@haf
@btrepp v5 is currently much more stable; it's beta because the licenses need sorting out. See logary/logary#351
Tyler Hartwig
@tylerhartwig
I'm looking at possibly using Logary, can someone give me rough estimates on what pricing with logary usually looks like?
Alexander Prooks
@aprooks
@tylerhartwig Logary is a library and does not have costs. If I'm not missing something
Ghost
@ghost~57bd5b1440f3a6eec0610e8d
bug?
Ghost
@ghost~57bd5b1440f3a6eec0610e8d

bug?
Just playing around with the docs to further consolidate Logary in my head, here's the code-snippet

[<EntryPoint>]
let main argv = 
    use logary = 
      withLogaryManager "logary test" (
        withTargets [
          Console.create Console.empty "console";
          InfluxDb.create influxConf "influxdb";
        ] 
        >> withRules [
          Rule.createForTarget ("influxdb");
          Rule.createForTarget ("console");
        ]
      ) |> Hopac.Hopac.run

    let logger = Logging.getCurrentLogger()
    let lFun = fun infoEvent -> Logger.log logger LogLevel.Info (fun _ -> Message.eventInfo infoEvent)

    let l = 
      job {
        do! lFun "Logary is weird 1"
        do! timeOutMillis 10 // need a small delay, or it doesn't work
        do! lFun "Logary is weird 2"
      }

    Stream.indefinitely (l <*> (timeOutMillis 5000 )) |> Stream.consume

If you log two things in quick succession to the influx target, you lose 'one' of them

Due to the non-deterministic nature of getting one of them at random, i'm guessing this either an issue with the http implementation in the influxdb target, or with influx. I'll do a quick test to see if influxdb is the problem.
It logs to the console fine
Ghost
@ghost~57bd5b1440f3a6eec0610e8d
i don't think it's influxdb, since when i use the following, nothing is missed:
[<EntryPoint>]
let main argv = 
    use httpClient = new HttpClient()
    let mutable no = 0
    // Basic Auth, used with 
    let basicAuth = Encoding.ASCII.GetBytes("ausername:asupersecretpassword")
    httpClient.DefaultRequestHeaders.Authorization <- new System.Net.Http.Headers.AuthenticationHeaderValue("Basic", Convert.ToBase64String(basicAuth))

    let t = 
      (
        fun ct -> 
          httpClient.PostAsync(
            "https://192.168.1.99/write?db=logary", 
            new System.Net.Http.ByteArrayContent(Encoding.ASCII.GetBytes(sprintf "event_info,environment=Development,host=MYHOST,processName=TestInflux test=%A,event=\"test\"" no)), 
            ct
          )
      ) |> Hopac.Alt.fromTask

    let t = 
      job {
        let! a = t 
        no <- no + 1
        let! b = t
        no <- no + 1
        return a,b
      }

    Stream.indefinitely(t <&> (timeOutMillis 5000)) |> Stream.consumeFun (fun (x,_) -> System.Console.WriteLine(x))
    System.Console.ReadKey() |> ignore
Proesmans Bert
@Bert-Proesmans
Hi guys! I'm a big fan of the project, but do have some questions. I'm using C# as interface on .Net 4.6+
what does "internal logging" mean?
Ghost
@ghost~57bd5b1440f3a6eec0610e8d
@bradder555 Aether had been updated to a newer version which had breaking changes for Logary
@haf i'm trying to understand why there is a "paket_replace" step in the rakefile. Seems to me that the build step can be simplified by removing this step? This way we can build the project without the dependency on ruby?
Henrik Feldt
@haf

@bradder555 Hello, sorry about the delay in answering. I've not been monitoring this chat that well, and I'm going to point people to my e-mail address instead in fact.

We have completely removed the ruby dependency for the build; you can now build with both Makefile and dotnet build and fake.

@Bert-Proesmans Internal logging means that Logary tells you about when it sends batches of logs, or when targets crash. You may want that information; for example, if you use Logary for audit logging, it may be a functional requirement for you that your targets are up and sending the audit logs.
It's also helpful when you want to set up a new target and debug what's going on with it.

I'm looking at possibly using Logary, can someone give me rough estimates on what pricing with logary usually looks like?

I've published a price list for commercial use; it's not very pricey and the payment is honour-bound rather than enforced at this point. @tylerhartwig

@aprooks Logary v5 is free for non-commercial use but costs a slight sum when used in production for commercial software https://github.com/logary/logary/blob/master/LICENSE.md#1-pricing
Henrik Feldt
@haf
@bradder555 I haven't seen that bug before; I've never experienced that Logary misses things; what version are you on?