Logsysteem

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Full-stack developer

Als Full-stack developer bij KUBUS houd je je bezig met het ontwikkelen van de (web)applicatie en services van BIMcollab. Samen met je SCRUM team werk je aan zowel de front- als de back-end. Als softwarebedrijf bevindt KUBUS zich in een unieke positie. We bouwen aan onze eigen producten die wereldwijd door tienduizenden gebruikers worden gebruikt. Ons bedrijf heeft precies de juiste grootte: groot genoeg om echt impact te maken in de markt, maar klein genoeg om als individuele ontwikkelaar invloed uit te kunnen oefenen en echt het verschil te kunnen maken. Ons ontwikkelteam bestaat uit ruim 40 ontwikkelaars, testers, scrum

Bekijk vacature »

Front-end developer (medior/senior)

Functie Het team bestaat uit een architect, fullstack developers, app developers, de product owner en projectmanager. Eenieder draagt vanuit zijn discipline bij aan een complete oplossing voor de klant. Uiteraard zul je hierin nauw samenwerken met je collega’s. Jij wordt verantwoordelijk voor de front-end implementatie en fungeert als lead op dit gebied binnen het team. Je kunt helder formuleren, ideeën uitdragen en overbrengen aan je collega’s. Qua technische stack is het vooral van belang dat je ervaren bent met Angular, HTML5, CSS en TypeScript. Verder is ervaring in NgRx, Bootstrap, BEM en Cypress een pré, evenals affiniteit met UX/UI Design!

Bekijk vacature »

Back-end Programmeur

Functieomschrijving Heb jij kort geleden je HBO ICT in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een ambitieuze werkgever in de regio van Breda zijn wij op zoek naar een Back-end programmeur met affiniteit met C#.NET, SQL en MS Access. Samen met team bestaand uit ware ICT professionals ben je verantwoordelijk voor het bouwen van maatwerk software voor hun klanten. Belangrijk is dat je kennis of ervaring hebt van C#.NET en SQL. Je toont een flexibele en sociale houding naar klanten toe. Je denkt in nieuwe mogelijkheden & gaat graag de uitdaging aan. Bedrijfsprofiel De

Bekijk vacature »

Back-End Web Developer

As a Back-End Web Developer at Coolblue, you ensure that our webshops work as optimal as possible. How do I become a Back-End Web Developer at Coolblue? As a Back-End Web Developer you work together with other development teams to make our webshop work as optimal as possible and to make our customers happy. Although you are a PHP Developer, you also feel confident with setting up microservices in Typescript or are open to learning this. Would you also like to become a PHP Developer at Coolblue? Read below if the job suits you. You enjoy doing this Writing pure

Bekijk vacature »

Traineeship Full Stack .NET Developer

Dit ga je doen Start op 7 augustus bij de Experis Academy en ontwikkel jezelf tot een gewilde Full Stack .NET Developer. Maar hoe ziet het traineeship eruit en wat kun je verwachten? Periode 1 De eerste 3 maanden volg je fulltime, vanuit huis, een op maat gemaakte training in teamverband. Je leert belangrijke theorie en krijgt kennis van de benodigde vaardigheden en competenties die nodig zijn om de IT-arbeidsmarkt te betreden. Zowel zelfstandig als in teamverband voer je praktijkopdrachten op het gebied van front- en backend development uit. Wat er per week op het programma staat kun je hier

Bekijk vacature »

Senior PHP Developer

Als Senior PHP Developer bij Coolblue zorg je ervoor dat onze webshops elke dag een beetje beter zijn en coach je andere developers op de hard en soft skills. Wat doe je als Senior PHP Developer bij Coolblue? Als PHP Developer werk je met andere development teams samen om onze webshop zo optimaal mogelijk te laten werken en onze klanten blij te maken. Hoewel je een PHP Developer bent, sta je open om C# of Typescript in te zetten of te leren. Ook PHP Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om

Bekijk vacature »

Starter/junior PHP developer

Functie Momenteel zijn ze op zoek naar een junior PHP developer om het team te versterken. Als back-end developer bouw je de enterprise software die hun bedrijf helpt bij haar primaire processen. Afhankelijk van de omvang van het project werk je in een klein team aan een project. Ze hebben dagelijkse stand-ups en elke twee weken een scrumsessie, begeleid door de Scrum Master, waar je je ideeën kunt presenteren en samen met de Product Owner kunt werken aan het beste product. Ze vertrouwen enorm op hun eigen bedrijfssoftware. Dit geeft hun een groot voordeel ten opzichte van hun concurrentie. Zo

Bekijk vacature »

Software ontwikkelaar ASP .Net / C#

Functie omschrijving Gezocht! Software ontwikkelaar. Ben jij bekend met termen als ASP .Net, C# en SQL? Ben jij op zoek naar een afwisselende en uitdagende IT-functie binnen de agrarische sector? En omschrijf jij jezelf als zelfstandig, enthousiast en proactief? Dan hebben wij de perfecte functie voor jou! Als Software ontwikkelaar binnen deze organisatie ben je samen met één andere collega verantwoordelijk voor de ontwikkeling en modificatie van het support en controle programma dat binnen dit bedrijf gebruikt wordt. Je gaat hierbij bijdragen aan de vertaling van klantwensen naar effectieve softwareoplossingen. Verder bestaan je werkzaamheden uit: Technische uitwerking van de business

Bekijk vacature »

Medior Front-end Developer

Bij Getnoticed doen wij wat we leuk vinden, websites bouwen en online marketing. Voor veel van onze klanten doen we dan ook allebei. Wel zo fijn om campagnes te draaien voor conversiegerichte websites die in eigen beheer zijn. In onze vestiging in Nederweert zit onze development afdeling en worden de websites gebouwd. Op dit moment zijn we op zoek naar jou: dé Medior Front-end Developer die net als wij, het hoofd boven het maaiveld durft uit te steken! In het kort Even een paar punten die omschrijven wat deze toffe baan inhoudt: Het uitwerken van designs tot functionele layouts Je

Bekijk vacature »

Database Developer

Functieomschrijving Heb jij ongeveer 3 jaar ervaring als Database Developer met MS SQL of een vergelijkbare database? Wil jij werken voor een ambitieuze werkgever in regio Tilburg waar jij volledig de mogelijkheid krijgt jezelf te ontwikkelen? Lees dan snel verder! Hoe ziet jouw takenpakket eruit? Je gaat projecten gedurende het hele proces begeleiden. Je sluit aan bij afspraken met klanten om hun processen helder te krijgen. Vervolgens voer jij het project uit en zorgt dat dit zo goed mogelijk verloopt; Je werkt aan nieuwe softwareoplossingen die de logistieke processen verbeteren of vernieuwen; Je houdt je bezig met het ontwikkelen van

Bekijk vacature »

Software developer - C Sharp

Functie omschrijving Heb jij interesse in het programmeren en ontwikkelen van software? En heb jij enige ervaring met Oracle databases en PL/SQL? Wij zijn voor een leuke opdrachtgever in omgeving Naaldwijk op zoek naar een software ontwikkelaar die graag werkt met C#, JAVA of Oracle. Wij zoeken iemand die breed inzetbaar is en die aan veel verschillende applicaties wilt werken. Als software developer werk je met je collega's samen in een leuk en informeel team aan het (her)ontwerpen van bedrijfssystemen. Je houdt je bezig met het ontwikkelen van REST API's en je onderhoudt applicaties in Oracle PL/SQL en APEX. Vind

Bekijk vacature »

Front-end developer (Vue.js) gezocht!

Functie Als Front-end developer is het jouw doel om efficiënte en effectieve frontend code te ontwerpen, ontwikkelen en onderhouden die goed aansluit bij de functionele behoefte vanuit de klant. Je zorgt voor optimale SEO-resultaten, sitespeed en frontend security. You build it, you run it, you own it! Je maakt deel uit van een DevOps Scrum team en werkt samen met back-end developers, test-engineers, interaction designers en een projectmanager. Er zijn verschillende groepen Scrum teams. Een roadmap team is jouw ‘’thuisbasis’’, daar wordt gewerkt aan doorontwikkeling van bestaande omgevingen voor een aantal klanten. Hiernaast zijn er projectteams waar nieuwe omgevingen worden

Bekijk vacature »

Senior Front-End Developer

Als Senior Front-End Developer bij Coolblue verbeter je de gebruiksvriendelijkheid van onze webshop voor miljoenen klanten. Wat doe je als Senior Front-End Developer bij Coolblue? Als Senior Front-end Developer werk je aan de gebruiksvriendelijkheid van onze webshop voor miljoenen klanten. Je vindt het leuk om samen te werken met de UX designer om stories op te pakken. Daarnaast ben je trots op je werk en verwelkomt alle feedback. Ook Senior Front-end Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om te doen Verbeteren van de gebruiksvriendelijkheid van onze webshop voor miljoenen klanten. Nadenken

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Scrum Master

TenneT is hard groeiend om de onze ambities waar te kunnen maken. Zo nemen wij een leidende rol in het aanjagen van de energietransitie. Het werven van nieuw talent speelt daarin een cruciale rol. Wij zijn op zoek naar een gedreven Scrum master op onze locatie Arnhem die hieraan wil bijdragen en misschien ben jij dat wel? Jouw bijdrage aan TenneT Je begeleidt twee teams binnen de afdeling Platform Services (PLS). Je helpt mee de devops manier van werken van de teams verder door te ontwikkelen. Je helpt de PO bij het managen van de product backlog; het voorbereiden van

Bekijk vacature »
Paco de Wulp

Paco de Wulp

09/06/2015 14:17:02
Quote Anchor link
Dit idee staat nog op mijn 'ToDo-List'.
Ik denk dan aan het loggen van elk record wat 'geupdate', 'gedelete' of 'geinsert' wordt.
Dit kan handig zijn om eventuele fouten in het systeem maar ook fouten door gebruikers te kunnen achterhalen.

Is het haalbaar (qua performance) en zinvol om een logsysteem voor een webapplicatie in PHP/MYSQL op te zetten ?

Toevoeging op 09/06/2015 14:25:41:

Aan ieder record wat wordt gelogd wordt dan een gebruiker_id / timestamp / actie (update, delete, insert) toegevoegd. Hierdoor zal de log-tabel snel in omvang toenemen.
 
PHP hulp

PHP hulp

25/04/2024 12:47:00
 
Ivo P

Ivo P

09/06/2015 15:00:24
Quote Anchor link
Mysql's eigen log?
 
Ward van der Put
Moderator

Ward van der Put

09/06/2015 15:22:52
Quote Anchor link
Je gaat dan van 1 naar 3 en meer records, namelijk het record zelf plus een record voor elke INSERT, UPDATE en DELETE.

Daarnaast verdubbelt het aantal queries.

Moeilijk om te zeggen wat dat voor de performance betekent, maar wat vaak wordt gedaan, is die metadata in de tabel zelf opslaan. Voeg bijvoorbeeld een created_on met een TIMESTAMP plus een created_by met een user-ID toe en je kunt daarmee zien wanneer en door wie dat record werd toegevoegd.

Voor een DELETE doe je iets vergelijkbaars: je delete een record niet echt, maar zet een flag om voor "deze is verwijderd". Alleen registreren wie wanneer de DELETE heeft uitgevoerd, is namelijk vaak ontoereikend als je vervolgens echt data kwijt bent. Dan weet je eigenlijk nog niet wat er is gebeurd: mocht die data wel weg?

Bij een UPDATE hangt het tot slot vooral af van hoe belangrijk mutaties en historische gegevens zijn. Als iemand bijvoorbeeld een adres wijzigt, zou je ervoor kunnen kiezen om gewoon een nieuw record toe te voegen, zodat je het oude adres achter de hand hebt.
 
Fabian webstars

Fabian webstars

09/06/2015 15:47:24
Quote Anchor link
kan je niet de data in 2 tabellen inserten en in een tabel daar van alle updates en deletes uitvoeren?
 
Ivo P

Ivo P

09/06/2015 16:18:56
Quote Anchor link
@fabian:

INSERT INTO users (naam) VALUES ('fabian');

UPDATE users SET naam = 'jan' WHERE naam = 'fabian';

UPDATE users SET naam = 'piet' WHERE naam = 'jan';


op die manier weet je dus hooguit nog dat user Piet ooit Fabian heette, maar dat hij ook kort Jan heette, kun je niet meer achterhalen...
 
Paco de Wulp

Paco de Wulp

09/06/2015 18:07:01
Quote Anchor link
@Ivo P: Oh, had ik nog niet aan gedacht. Weet jij wat er allemaal wordt gelogged ?
@Ward: Jouw oplossing zou kunnen, maar dan weet ik alleen of het record gewijzigd is, maar niet precies welk(e) veld(en) er is(zijn) gewijzigd.

Mijn logsysteem-idee is misschien een beetje lomp, maar als het qua performance amper iets uit maakt en de diskruimte is er gewoon! Who cares ?

N.B. Het log-bestand moet zo af-en-toe wel worden opgeschoond anders groeit het uit zijn voegen. Eens per maand opschonen en naar een backup schrijven.

Toevoeging op 09/06/2015 18:08:50:

Even nalezen: https://dev.mysql.com/doc/refman/5.1/en/server-logs.html
Gewijzigd op 09/06/2015 18:15:25 door Paco de Wulp
 
Ward van der Put
Moderator

Ward van der Put

09/06/2015 18:56:59
Quote Anchor link
Misschien nog een andere aanvliegroute. Je kunt een tabel maken met dit type indeling:

- tabelnaam
- kolomnaam
- timestamp
- oude waarde
- nieuwe waarde

Zo kun je precies terugvinden welke kolom in welke tabel wanneer werd gewijzigd. Het is relationeel niet okay, maar het geeft je wel een goed beeld van wat zich afspeelt in de database.

Ik heb dit model één keer gebruikt voor een CRM-systeem. Daarin werkt het op zich goed: je kunt zien wanneer bijvoorbeeld een telefoonnummer werd gewijzigd en wat het vorige telefoonnummer was. Zo registreert het elke wijziging — en af en toe betrapt het gebruikers daarmee ook op een leugen of een halve waarheid (want daarom was het te doen).

Ruimere en belangrijkere vraag is eigenlijk niet wát je logt, maar vooral wáárom je iets logt.
 
Paco de Wulp

Paco de Wulp

09/06/2015 20:32:55
Quote Anchor link
Ja, deze aanvliegroute is ook een mogelijke oplossing.
Ach, ik weet nog niet of ik het daadwerkelijk ga implementeren, want zoals je zegt het moet inderdaad wel een goede reden hebben om het te doen.
 
Thomas van den Heuvel

Thomas van den Heuvel

09/06/2015 20:54:54
Quote Anchor link
Dan zou ik gewoon met een soort van versiebeheer (/workflow) gaan werken, waar je gewoon nieuwe records creëert zoals Ward ook al voorstelde (de nieuwste versie van een item is de versie waar je meer werkt). Als je alleen alle verschillen opslaat wordt het een enorme legpuzzel om na te gaan welke toestand één record op enig moment had. Dit zou je dan elke keer moeten uitrekenen. En je kunt alleen terugrekenen dan, lijkt mij ook erg onhandig.

De oplossing hangt natuurlijk ook af van wat je precies met deze logging wilt bereiken en wat je ermee wilt kunnen doen...
 
Fabian webstars

Fabian webstars

10/06/2015 03:00:15
Quote Anchor link
kan je niet elke verandering naar je zelf toe mailen ofzo dan kan je het in je database schoon houden en een speciaal email adres maken voor alleen de "updates" die mensen uitvoeren. als er heel veel veranderd wordt is het alleen niet ideaal :P
 
Ozzie PHP

Ozzie PHP

10/06/2015 03:18:54
Quote Anchor link
>> Dit kan handig zijn om eventuele fouten in het systeem maar ook fouten door gebruikers te kunnen achterhalen.

Aan wat voor fouten door gebruikers denk jij dan? Kan een gebruiker rechtstreeks in jouw database? Dat lijkt me niet, dus op welke manier verwacht je dan dat hij/zij fouten kan maken?

Ik zou dan eerder denken aan het loggen van handelingen. Bijv. Pietje heeft 9 juni 2015 om 21.30 artikel X uit de database verwijderd. Als dan vervolgens de directeur van het bedrijf bij jou aan de telefoon hangt omdat ie z'n artikel mist, kun jij zeggen dat Pietje dat verwijderd heeft. Op die manier kun je met een bepaald doel loggen. Je logt dan bijv. handelingen van de afgelopen 2 weken en alles wat ouder is, wis je weer. Op die manier loopt je database ook niet vol. Ik zou dan vooral 'kritische' handelingen loggen, bijv. het verwijderen of aanpassen van een record. Maar bijv. het aan- of uitzetten van een bepaalde onbelangrijke setting zou ik dan weer niet loggen.
Gewijzigd op 10/06/2015 03:20:10 door Ozzie PHP
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.