Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Jan 28 21:10

    dependabot-preview[bot] on nuget

    (compare)

  • Jan 28 21:10
    dependabot-preview[bot] commented #490
  • Jan 28 21:10
    ejsmith closed #490
  • Jan 28 21:09
    claassistantio commented #490
  • Jan 28 21:09
    ejsmith synchronize #490
  • Jan 28 21:09

    ejsmith on nuget

    Rename ExceptionlessSystemFilte… Update packages Merge branch 'master' into depe… (compare)

  • Jan 28 20:43

    dependabot-preview[bot] on nuget

    (compare)

  • Jan 28 20:43

    dependabot-preview[bot] on nuget

    (compare)

  • Jan 28 20:43
    dependabot-preview[bot] closed #491
  • Jan 28 20:43
    dependabot-preview[bot] closed #492
  • Jan 28 20:43
    dependabot-preview[bot] edited #491
  • Jan 28 20:43
    dependabot-preview[bot] edited #492
  • Jan 28 20:43
    dependabot-preview[bot] commented #491
  • Jan 28 20:43
    dependabot-preview[bot] commented #492
  • Jan 28 20:42
    dependabot-preview[bot] edited #492
  • Jan 28 20:42
    dependabot-preview[bot] edited #491
  • Jan 28 20:42

    ejsmith on master

    Update packages (compare)

  • Jan 28 20:05
    claassistantio commented #492
  • Jan 28 20:04
    dependabot-preview[bot] labeled #492
  • Jan 28 20:04
    dependabot-preview[bot] opened #492
Blake Niemyjski
@niemyjski
and a database at each or what?
Lukas Wöhrl
@woehrl01
the setup is like this: Each customer as a database, if a fat client throws an error (C# or C++) those are just stored into the database. a separate service which has connection to the internet and the database table polls the table and sends them to the exceptionless instance together with a tag to separate the different customers
Blake Niemyjski
@niemyjski
we'll
Lukas Wöhrl
@woehrl01
so the database and the fat clients are able to be in a restricted network without internet access.
Blake Niemyjski
@niemyjski
I wonder if it would be easier to just setup a proxy or something on client that don't have an internet connection
I get what you are doing just thinking..
I'd add a column to your databases for versioning
Lukas Wöhrl
@woehrl01
there is another reason we have this setup. on some customers we are not allowed to even access the internet. so the support is able to have look at exceptions via the database
Blake Niemyjski
@niemyjski
and then do this queue implementation and then on your dequeue look at that column and figure out if it's v1 or v2 and then do the right thing
You could just deploy an exceptionless instance inside each of these customers orgs and be done :)
Lukas Wöhrl
@woehrl01
:smile:
Blake Niemyjski
@niemyjski
I'll be here. I'm going to go get some breakfast
if you have any questions just shoot an im
other than this issue. how is everything working out for you?
Lukas Wöhrl
@woehrl01
thanks! enjoy your meal!
everything good so far. thx! just this small issues :)
Lukas Wöhrl
@woehrl01
just found out that is used the Newtonsoft json.net serializer, and the Exceptionless 1.x deserializer. (namespaces mistake ;) )
Blake Niemyjski
@niemyjski
yeah
we internalize each one
Lukas Wöhrl
@woehrl01
I suppose there are different serialiser settings in the 1.x branch. ;)
Blake Niemyjski
@niemyjski
might be
not 100% sure
might have to just rip out the 1.x serializer settings and then have two different serializers that you use
shouldn't be to hard
Lukas Wöhrl
@woehrl01
I'll test this in the next days ;) thank you very much for your help!
Blake Niemyjski
@niemyjski
no problem
Lukas Wöhrl
@woehrl01
have a nice day!
Blake Niemyjski
@niemyjski
you too
Blake Niemyjski
@niemyjski
@woehrl01 were you able to figure this out?
@/all whose ready to help test :D
Lukas Wöhrl
@woehrl01
didn't have time to test this out yet. but today we updated some of our services to send our messages from log4net via exceptionless. works awesome, as expected :)
Blake Niemyjski
@niemyjski
:)
Lukas Wöhrl
@woehrl01
no more email flooding :+1:
Blake Niemyjski
@niemyjski
we've made some more changes around that recently to ensure you get less emails in some scenarios
we were getitng bombarded with tons of emails when there wasn't a stack trace on an error
Lukas Wöhrl
@woehrl01
sounds good
is there something planed to allow custom "grouping" into the left menu?
for example to store complex searches for later usage (instead of keeping them in a text file)
Blake Niemyjski
@niemyjski
Yeah
We want that as well and more dashboards
Sander Rijken
@srijken
@niemyjski you mentioned me, but I couldn't find the message
Blake Niemyjski
@niemyjski
It's up in the list
Sander Rijken
@srijken
Any questions that I should answer? I found some mentions, that's it
Blake Niemyjski
@niemyjski
Nope
was just about testing :)
Sander Rijken
@srijken
right
Lukas Wöhrl
@woehrl01

@niemyjski I got it working, but not as you proposed. ;) Becauses it would introduce another DI container in our system (to allow injecting my dao into the IEventQueue nicely). It also would require me to add a fake api-key and url to make .Submit() work. (IsValid would fail otherwise)

I use now:
EventBuilder builder = e.ToExceptionless();
EventPluginContext context = new EventPluginContext(builder.Client, builder.Target, builder.PluginContextData);
EventPluginManager.Run(context);
IJsonSerializer serializer = builder.Client.Configuration.Resolver.GetJsonSerializer();
string errorAsString = serializer.Serialize(error.Target);

I even got the old one working :). The key was to upgrade the agent to 2.x and deserialize my json to the "InnerError" type. And submit as "@error" in the Event.Data. I can detect the different versions based on an existing "ExceptionlessClientInfo" property in the json file.

I have still one problem, and don't know if it's my mistake. I want to add additional EnvironmentInfos. So I add entries to the .Data field like: info.Data.Add("system up time", val) but these values do not show up in the UI. Things like: info.Architecutre = "x64" are working fine.

Blake Niemyjski
@niemyjski
@woehrl01 , you could reuse our lightweight di system. You just had to register your type with it :).
hmm
well, it would add all of that to the event.data property. are they listed there