This document provides an overview of the Xdebug PHP debugging tool. It discusses installing Xdebug, enabling error handling and displaying variables, using Xdebug for remote debugging and profiling PHP scripts, and generating function traces. The document also lists Xdebug features and configuration options for profiling, remote debugging, and function traces.
Xdebug - Your first, last, and best option for troubleshooting PHP codeAdam Englander
In depth presentation on setting up, configuring, and trigger PHP Xdebug for step through debugging and code profiling. This presentation will not tell you how to configure your Xdebug client. It will help you understand how to configure and tune Xdebug for web and CLI based debugging and profiling in PHP.
Security of go modules and vulnerability scanning in GoCenterDeep Datta
Go 1.13 introduced important security features to Go Modules including a checksumdb. Deep Datta from JFrog will explain how this works and provide info on other tools that keep modules secure. He will review GoCenter’s vulnerability scanning capabilities so developers can check for security issues or known vulnerabilities.
Из презентации вы узнаете:
про большинство утилит из арсенала Go, предназначенных для оптимизации производительности;
— как и когда их (утилиты) использовать, а также мы посмотрим как они устроены внутри;
— про применимость linux утилиты perf для оптимизации программ на Go.
Кроме того, устроим небольшой crash course, в рамках которого поэтапно соптимизируем несколько небольших программ на Go с использованием вышеперечисленных утилит.
Go 1.13 introduced important security features to Go Modules including a checksumdb. Deep Datta from JFrog will explain how this works and provide info on other tools that keep modules secure. He will review GoCenter’s vulnerability scanning capabilities so developers can check for security issues or known vulnerabilities.
Xdebug - Your first, last, and best option for troubleshooting PHP codeAdam Englander
In depth presentation on setting up, configuring, and trigger PHP Xdebug for step through debugging and code profiling. This presentation will not tell you how to configure your Xdebug client. It will help you understand how to configure and tune Xdebug for web and CLI based debugging and profiling in PHP.
Security of go modules and vulnerability scanning in GoCenterDeep Datta
Go 1.13 introduced important security features to Go Modules including a checksumdb. Deep Datta from JFrog will explain how this works and provide info on other tools that keep modules secure. He will review GoCenter’s vulnerability scanning capabilities so developers can check for security issues or known vulnerabilities.
Из презентации вы узнаете:
про большинство утилит из арсенала Go, предназначенных для оптимизации производительности;
— как и когда их (утилиты) использовать, а также мы посмотрим как они устроены внутри;
— про применимость linux утилиты perf для оптимизации программ на Go.
Кроме того, устроим небольшой crash course, в рамках которого поэтапно соптимизируем несколько небольших программ на Go с использованием вышеперечисленных утилит.
Go 1.13 introduced important security features to Go Modules including a checksumdb. Deep Datta from JFrog will explain how this works and provide info on other tools that keep modules secure. He will review GoCenter’s vulnerability scanning capabilities so developers can check for security issues or known vulnerabilities.
Google's Go is a relatively new systems programming language that has recently gained a lot of traction with developers. It brings together the ease and efficiency of development in modern interpreted languages like Python, Perl, and Ruby with the efficiency and safety of a statically typed, compiled language like C/C++ and Java.
On top of that, Go is a language built for modern hardware and problems. With built-in support for concurrency, programmers can easily build software to scale up to today's many-core beasts. Programming in Go is really nice, and in this tutorial, you will learn why.
We will cover an introduction to the Go programming language, and together we will build a multi-user network service demonstrating all of the major principles of programming in Go.
In this talk, we look at WinDbg, a powerful debugger that can help resolve difficult errors in production environments. We use WinDbg to pinpoint stack traces given dump files generated in production, to find memory leak causes and inspect heap memory, and even to automatically walk objects and threads to find deadlocks.
Debugging PHP with xDebug inside of Eclipse PDT 2.1Bastian Feder
Integrated development plattforms (IDEs) like Eclipse or Netbeans do get more popular these days.
One cause might be the beautiful benefits a developer gains from using an IDE like a type history or a code completion.
This talk shall enable the attendee to get knowleadge about the possibilites of Eclipse PDT to use xDebug as internal debugger
It shows howto install xDebug and give a deep introduction about how to enable Eclipse PDT version 2 to communicate with xDebug.
Another topic of this talk would be the different debugging mechanism Eclipse PDT provides and how they work.
Google's Go is a relatively new systems programming language that has recently gained a lot of traction with developers. It brings together the ease and efficiency of development in modern interpreted languages like Python, Perl, and Ruby with the efficiency and safety of a statically typed, compiled language like C/C++ and Java.
On top of that, Go is a language built for modern hardware and problems. With built-in support for concurrency, programmers can easily build software to scale up to today's many-core beasts. Programming in Go is really nice, and in this tutorial, you will learn why.
We will cover an introduction to the Go programming language, and together we will build a multi-user network service demonstrating all of the major principles of programming in Go.
In this talk, we look at WinDbg, a powerful debugger that can help resolve difficult errors in production environments. We use WinDbg to pinpoint stack traces given dump files generated in production, to find memory leak causes and inspect heap memory, and even to automatically walk objects and threads to find deadlocks.
Debugging PHP with xDebug inside of Eclipse PDT 2.1Bastian Feder
Integrated development plattforms (IDEs) like Eclipse or Netbeans do get more popular these days.
One cause might be the beautiful benefits a developer gains from using an IDE like a type history or a code completion.
This talk shall enable the attendee to get knowleadge about the possibilites of Eclipse PDT to use xDebug as internal debugger
It shows howto install xDebug and give a deep introduction about how to enable Eclipse PDT version 2 to communicate with xDebug.
Another topic of this talk would be the different debugging mechanism Eclipse PDT provides and how they work.
Advanced Eclipse Workshop (held at IPC2010 -spring edition-)Bastian Feder
So wie sich PHP weiterentwickelt, so entwickelt sich auch die Art der Programmierung weiter. Die Zeiten sind vorbei, in denen PHP nur von Hobbyprogrammierern genutzt wurde. Doch mit dem Anspruch an die Projekte steigt auch der Anspruch bei der Entwicklung. Schnell wird hierbei auf eine leistungsstarke IDE wie Eclipse PDT, Zend Studio oder Netbeans zurückgegriffen. Doch wie sieht eine anspruchsvolle Entwicklung mit solch einer IDE aus? Dieser Workshop wird Ihnen am Beispiel von der IDE Eclipse PDT demonstrieren, wie solch eine Entwicklung aussehen kann. Im Detail wird Ihnen gezeigt, wie Sie mittels SVN und Subversive Ihren Code mit mehreren Leuten gemeinsam pflegen und entwickeln und wie Sie die Entwicklungsumgebung Ihren Bedürfnissen anpassen, um z.B. mittels phing eigene Build-Prozesse anstoßen zu können. Damit Sie direkt eigene Erfahrungen sammeln können, würden wir Ihnen herzlich anraten, Ihren Laptop mitzubringen. Um zeitraubenden Installationen vorzubeugen, wird Ihnen ein Ubuntu in Form einer Live-CD bereitgestellt. Teilnehmer mit bestehender Linux-Installation und entsprechenden Rechten können ihr System während des Workshops direkt für den täglichen Gebrauch einrichten.
Slide introduce about the process of debugging and profling a web application. How to use PHPED debugger to debug your application and Xdebug to profile your application.
Adopt DevOps philosophy on your Symfony projects (Symfony Live 2011)Fabrice Bernhard
This is the presentation given at the Symfony Live 2011 conference. It is an introduction to the new agile movement spreading in the technical operations community called DevOps and how to adopt it on web development projects, in particular Symfony projects.
Plan of the slides :
- Configuration Management
- Development VM
- Scripted deployment
- Continuous deployment
Tools presented in the slides:
- Puppet
- Vagrant
- Fabric
- Jenkins / Hudson
Workshop at TYPO3 Developer Days 2018. Goal is to have a working ddev setup with a simple TYPO3 installation. A quick look in the extensive possibilities is also part of the presentation.
Was Java-Entwickler schon lange nutzen und nicht mehr missen wollen, findet immer
mehr, wenn auch skeptischen, Zuspruch in der PHP Entwicklergemeinde. Integrierte
Enticklungsumgebungen (IDEs), wie Eclipse und Netbeans, werden immer beliebter in der
PHP Szene. Dies sind nicht zuletzt die hervorragenden Vorteile, wie eine automatische
Codevervollständigung oder ein Vererbungsbaum, die eine IDE mit sich bringt, schuld.
Jedoch, es ist nicht alles Gold, was glänzt.
Wenn man sich dazu entschlieflt eine IDE zu nutzen, stellt man schnell fest, dass auch
diese so ihre Eigenheiten hat, auf die man sich einstellen muss.
Dieser Workshop wird Ihnen den Um- und Einstieg in die qualifizierte und effektive
Nutzung integrierter Entwicklungssysteme nahe bringen.
Am Beispiel der Eclipse IDE für PHP Entwicklung (Eclipse PDT 2.0), werden Ihnen der
grundsätzliche Aufbau und Funktionsweisen erklärt. Darüberhinaus zeigt der Workshop,
die Installation, Konfiguration und die Erweiterungsmöglichkeiten der Eclipse IDE.
Im Detail werden Ihnen die Integration von phpDokumentor und xDebug in die
Entwicklungsumgebung gezeigt.
Das Ziel dieses Workshops ist es, Sie fit für Ihre tägliche Arbeit zu machen, deshalb
wird Ihnen herzlich angeraten ihren Laptop mit zubringen, um bereitgestellte Übungen
nachvollziehen und durchführen zu können. Um zeitraubenden Installationen vorzubeugen
wird Ihnen ein Ubuntu in Form eines VMware-oder Virtualbox-Images bereitgelegt.
Teilnehmer mit bestehender Linux-Installation und entsprechenden Rechten können ihr
System während des Workshops direkt für den täglichen Gebrauch einrichten.
Diagnosing WordPress: What to do when things go wrongWordCamp Sydney
Everyone hates seeing the White Screen of Death, especially if it’s discovered by the client calling to tell you their site is down. Even more frustrating can be intermittent error and/or slow response times, as these can be much harder to diagnose.
Aimed at newer WordPress developers and advanced users, this talk will start with the basic diagnostics tools available and go all the way through to advanced debugging. Attendees should be able to leave this talk with an informed diagnostic approach to errors, rather than just panic.
Presented by Tim Butler @timbutler at WordCamp Sydney 2018
Zero Downtime Deployment with Ansible - learn how to provision Linux servers with a web-proxy, a database and automate zero downtime deployment of a Java application to a load balanced environment.
These are the slides from a tutorial held at the Velocity Conference in Barcelona November 19th, 2014.
Git repo: https://github.com/steinim/zero-downtime-ansible
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
3. Xdebug Features
► Variable display
► Stack Traces
► Profiling PHP Scripts
► Remote Debugging
► Function Traces
► Code Coverage Analysis*
* Not covered in this presentation.
4. Installing
► Xdebug is a PHP extension. (written in C)
► Xdebug is Open Source so you could
download and build/install it yourself.
► Almost every Linux distro today provides an
Xdebug binary package.
► Binaries are also available for Windows from
http://xdebug.org website.
5. Installing (Part 2)
► On Ubuntu 9.04:
apt-get install php5-xdebug
► On Mandriva:
urpmi php5-xdebug
► Using PEAR/PECL:
pecl install xdebug
pecl upgrade xdebug
6. Installing (Part 3)
► Toenable xdebug add the fullpath to
xdebug.so:
zend_extension=/usr/lib/php5/20060613+lfs/xdebug.so
To php.ini or
To conf.d/xdebug.ini file
► Youcould also setup system wide defaults
as well through the ini file.
7. Installing (Part 4)
► Check that Xdebug is installed via:
php –v
php –m
php –ri xdebug
► Check phpinfo() report and look for xdebug
section.
► You might need to restart your web server.
12. Error Handling (My .htaccess)
php_flag xdebug.collect_vars on
php_value xdebug.collect_params 4
php_flag xdebug.dump_globals on
php_value xdebug.dump.SERVER REQUEST_URI
php_value xdebug.dump.GET *
php_value xdebug.dump.POST *
php_value xdebug.dump.COOKIE *
php_flag xdebug.show_local_vars on
► Documentation: http://www.xdebug.org/doc/
► Also check phpinfo(), specifically Xdebug section
13. Remote Debugging
► XDebug has Remove Debugging support
through GDB (old) and DBGP (new)
protocols.
► You will need a client that can speak one of
these protocols.
► You will need to adjust Xdebug settings on
the server to enable remote debugging.
► You can also debug CLI scripts.
14. Remote Debugging (Clients)
► Dev-PHP (IDE: Windows)
► Eclipse plugin, which has been submitted as an enhancement for the PDT (IDE).
► Emacs plugin (Editor Plugin).
► ActiveState's Komodo (IDE: Windows, Linux, Mac; Commercial).
► MacGDBP - Standalone Mac client.
► NetBeans (IDE: Windows, Linux, Mac OS X and Solaris.
► Notepad++ plugin (IDE: Windows).
► WaterProof's PHPEdit (IDE, from version 2.10: Windows; Commercial).
► Anchor System's Peggy (IDE: Windows, Japanese; Commercial).
► MP Software's phpDesigner (IDE: Windows, Commercial).
► PHPEclipse (Editor Plugin).
► Protoeditor (Editor: Linux).
► tsWebeditor (Editor: Windows).
► Xored's TrueStudio IDE (IDE; Commercial).
► VIM plugin (Tutorial) (Editor Plugin).
► jcx software's VS.Php (MS Visual Studio Plugin; Commercial).
► XDebugClient - Standalone Windows client.
* Source: http://www.xdebug.org/docs/remote
15. Remote Debugging (Server)
► Need to enable remote debugging on the server:
php_value xdebug.remote_enable 1
php_value xdebug.remote_host 192.168.1.105
php_value xdebug.remote_port 9000
php_value xdebug.remote_mode req
► remote_host - takes a hostname or IP address (There’s a
patch from Facebook devs to remove this restriction)
► remote_mode – controls when the remote debugging
starts:
req - at the beginning of the script
jit - upon an error condition
16. Remote Debugging (Starting)
► xdebug_break( )
► XDEBUG_SESSION_START variable passed
via GET or POST sets XDEBUG_SESSION
cookie.
► XDebug Helper Firefox Addon:
https://addons.mozilla.org/en-
US/firefox/addon/3960
17. Profiling
► Xdebug's built-in profiler generates
cachegrind files.
► You will need a tool that can read and
visualize cachegrind files.
► You will need to adjust some XDebug
settings in order to enable profiling on the
server.
18. Profiling (Starting)
► Need to enable profiling on the server:
php_value xdebug.profiler_enabled 1
php_value xdebug.profiler_append 1
php_value xdebug.profiler_enable_trigger 1
php_value xdebug.profiler_output_dir /tmp
php_value xdebug.profiler_output_name cachegrind.out.%p
► You need to set xdebug.profiler_enable_trigger if
you want to trigger the profiling yourself.
► You can trigger profiling via XDEBUG_PROFILE
variable passed via GET or POST (or via XDebug
Helper Firefox Addon) sets XDEBUG_PROFILE
cookie.
23. Function Traces
► Xdebug allows you to log all function calls,
including parameters and return values to a
file in different formats.
► Function trace files contain a timeline and
record of each function call in PHP including
file and line number.
► It’s a great way to see exactly what’s going
on. (At times a bit too much detail)
25. Function Traces (VIM Syntax)
► Xdebug package comes with a VIM syntax
highlight file.
► Copy the xt.vim file to ~/.vim/syntax
► Edit, or create, ~/.vim/filetype.vim and add the
following lines:
augroup filetypedetect
au BufNewFile,BufRead *.xt setf xt
augroup END
* Xdebug Documentation: http://www.xdebug.org/docs/execution_trace
26. Function Traces
► Function trace files come in two formats:
Human readable (lots of options here)
►php_value xdebug.show_mem_delta 1
►php_value xdebug.collect_return 1
►php_value xdebug.collect_params 4
Machine readable
►php_value xdebug.trace_format 1
HTML format.
28. Function Traces (Tips)
► Be careful when using auto_trace option for
big projects.
► Files can get very big. I saw cases of >1 Gig
► Turn Off VIM syntax highlighter for very big
files.
► You can also trigger start/stop of tracing via
PHP.
29. Function Traces (Starting)
► xdebug_start_trace($filename, $options);
XDEBUG_TRACE_APPEND (1)
►makes the trace file open in append mode rather
than overwrite mode
XDEBUG_TRACE_COMPUTERIZED (2)
►creates a trace file with the format as described
under 1 "xdebug.trace_format".
XDEBUG_TRACE_HTML (4)
►creates a trace file as an HTML table
► xdebug_stop_trace();