-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Can't locate object method "allow_bignum" via package "JSON::XS" when using OpenTracing::Implementation->bootstrap_global_default_tracer(); #35
Comments
Seems like doing use So a temporary fix is to do a |
I'm afraid we overlooked that Probably we'll need to borrow from |
I have a patch available to skip However, I find it hard to write proper test to prove correctness of this approach. I need to figure out how to bypass loading |
Hoi Theo,
Goed werk. Bedankt. Is die al beschikbaar op CPAN?
Ik ben een heel stuk gevorderd en heb een deel van mijn code voorzien van ‘instrumentation’.
Hier een voorbeeld van een (cron) script dat orders doorloopt en per order informatie ophaalt.

So far so good.
Alleen omdat we een storing met een database server hadden, stuitte ik op een ander probleem.
Hier de response van een webservice:
{
"message" : "DBI connect('database=dtatest;host=imta-proxysql-dev.dfni.nl','dta',...) failed: Can't connect to server on 'imta-proxysql-dev.dfni.nl' (115) at /usr/local/imta/lib/perl/SS/App/DBH.pm line 260.\n",
"error" : "CAIW::IMTA::TriplePlayTest::IMTANGListener::AddMappingException",
"status" : "500",
"timestamp" : "2024-05-07T15:44:37"
}
Hier de response van dezelfde webservice nadat de methode via WrapScope ‘gewrapt’ is.
{
"timestamp" : "2024-05-07T15:46:35",
"status" : "500",
"message" : "Died at /usr/local/share/perl/5.36.0/OpenTracing/WrapScope.pm line 163.\n",
"error" : "unknown error class"
}
Dus de gegooide exceptie blijft niet behouden en wordt vervangen door een ‘cryptische’ melding ergens diep uit de library.
Overigens wordt hij wel netjes getoond in DataDog:

Ik ga kijken of ik kan vinden wat er fout gaan in de source. Maar als je tijd hebt, kun je daar even naar kijken.
Vast bedankt.
Met vriendelijke groeten,
Marc Remijn
Deltafiber
… Op 7 mei 2024, om 13:58 heeft Theo van Hoesel ***@***.***> het volgende geschreven:
I have a patch available to skip JSON::XS and will try to use Cpanel::JSON::XS in favour of JSON::PP, both supporting ->allow_bignum.
However, I find it hard to write proper test to prove correctness of this approach. I need to figure out how to bypass loading Cpanel::JSON::XS even though that is installed correctly.
—
Reply to this email directly, view it on GitHub <#35 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AAWOB5KN6XKTNPYKTRC2XM3ZBC6XVAVCNFSM6AAAAABGLAJHEOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAOJYGIZTOMZYHA>.
You are receiving this because you authored the thread.
|
I tested the DD implementation. First I did this:
That went OK. Traces being sent to DD.
Output:
But when running stuff locally, we don't always have a DD agent present. So I thought, let's use the
OpenTracing::Implementation->bootstrap_global_default_tracer();
and set the environment variablePERL_OPENTRACING_IMPLEMENTATION
as desired. Leaving the variable unset, we don't get ugly warnings when DD agent is not reachable.So I did this:
Running the script with the
PERL_OPENTRACING_IMPLEMENTATION
unset, the script runs without warnings (when there is no DD agent reachable).But when running with the variable set to 'DataDog' I get:
Output:
The text was updated successfully, but these errors were encountered: